[clang] [CIR] Implement lowering for BitInt that needs to be an array (PR #225470)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Tue Sep 22 11:47:59 PDT 2026


================
@@ -2378,7 +2378,13 @@ void LoweringPreparePass::lowerStoreOfConstAggregate(cir::StoreOp op) {
       cir::GetGlobalOp::create(builder, op.getLoc(), ptrTy, gv.getSymName());
 
   // Replace store with copy.
-  builder.createCopy(op.getAddr(), globalPtr);
+  cir::CopyOp copyOp = builder.createCopy(op.getAddr(), globalPtr);
+
+  cir::CIRDataLayout dataLayout(mlirModule);
+  if (alloca.getAlignment() != dataLayout.getABITypeAlign(ty).value()) {
+    copyOp.setDstAlignment(alloca.getAlignment());
+    copyOp.setSrcAlignment(alloca.getAlignment());
----------------
erichkeane wrote:

what do you mean by 'reuse' check here? 

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


More information about the cfe-commits mailing list