[clang] [clang] Lower _BitInt(129+) to a different type in LLVM IR (PR #91364)

John McCall via cfe-commits cfe-commits at lists.llvm.org
Mon Jul 8 15:25:35 PDT 2024


================
@@ -128,6 +128,16 @@ class CodeGenTypes {
   /// memory representation is usually i8 or i32, depending on the target.
   llvm::Type *ConvertTypeForMem(QualType T, bool ForBitField = false);
 
+  /// Check that size and ABI alignment of given LLVM type matches size and
+  /// alignment of given AST type. If they don't, values of the type need to be
+  /// emitted as byte array.
----------------
rjmccall wrote:

```suggestion
  /// Check whether the given type needs to be laid out in memory
  /// using an opaque byte-array type because its load/store type
  /// does not have the correct alloc size in the LLVM data layout.
  /// If this is false, the load/store type (convertTypeForLoadStore)
  /// and memory representation type (ConvertTypeForMem) will
  /// be the same type.
```

https://github.com/llvm/llvm-project/pull/91364


More information about the cfe-commits mailing list