message: [SwiftASTContext] Perform archetype binding before going to IRGen.
diff: @@ -6144,12 +6144,26 @@ SwiftASTContext::GetByteStride(lldb::opaque_compiler_type_t type,
  llvm::Optional<size_t> SwiftASTContext::GetTypeBitAlign(void *type,
  ExecutionContextScope *exe_scope) {
  - if (type) {
  + if (!type)
  + return {};
  +
  + // If the type has type parameters, bind them first.
  + swift::CanType swift_can_type(GetCanonicalSwiftType(type));
  + if (swift_can_type->hasTypeParameter()) {
  + if (!exe_scope)
  + return {};
  + ExecutionContext exe_ctx;
  + exe_scope->CalculateExecutionContext(exe_ctx);
  + auto swift_scratch_ctx_lock = SwiftASTContextLock(&exe_ctx);
  + CompilerType bound_type = BindAllArchetypes({this, type}, exe_scope);
  + // Note thay the bound type may be in a different AST context.
  + return bound_type.GetTypeBitAlign(exe_scope);
  + }
  +
  const swift::irgen::FixedTypeInfo *fixed_type_info =
  GetSwiftFixedTypeInfo(type);
  if (fixed_type_info)
  return fixed_type_info->getFixedAlignment().getValue();
  - }
  return {};
  }
  