llvmorg-github-actions[bot] wrote:

<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Jan Leyonberg (jsjodin)

<details>
<summary>Changes</summary>

This patch fixes the order of creation, otherwise the compiler may evaluate one 
before the other and the lit test fail.

---
Full diff: https://github.com/llvm/llvm-project/pull/226706.diff


1 Files Affected:

- (modified) 
clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp (+3-2) 


``````````diff
diff --git 
a/clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp 
b/clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
index a9f73e667f1f3..a7639abb62466 100644
--- a/clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
+++ b/clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
@@ -1897,8 +1897,9 @@ mlir::Value copyRegisterToTemp(CIRBaseBuilderTy &b, 
mlir::Location loc,
         loc, b.createPtrBitcast(regAddr, f.ac.coercedType), 8);
     mlir::Value dst = temp;
     if (f.ac.directOffset) {
-      dst = b.createPtrStride(loc, b.createPtrBitcast(temp, byteTy),
-                              b.getSignedInt(loc, f.ac.directOffset, 32));
+      mlir::Value tempByte = b.createPtrBitcast(temp, byteTy);
+      mlir::Value offset = b.getSignedInt(loc, f.ac.directOffset, 32);
+      dst = b.createPtrStride(loc, tempByte, offset);
     }
     b.createStore(loc, val, b.createPtrBitcast(dst, f.ac.coercedType));
     return b.createPtrBitcast(temp, byteTy);

``````````

</details>


https://github.com/llvm/llvm-project/pull/226706
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to