[llvm] [AssumeBundles] Dereferenceable used in bundle only applies at assume. (PR #126117)

Philip Reames via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 10 07:40:49 PST 2025


================
@@ -11,12 +11,12 @@ define void @f(i32 %ptr_i, ptr %ptr2, i1 %cond) {
 ; CHECK-NEXT:    store i32 0, ptr [[PTR2:%.*]], align 4
 ; CHECK-NEXT:    br label [[FOR_BODY_LR_PH]]
 ; CHECK:       for.body.lr.ph:
-; CHECK-NEXT:    [[TMP0:%.*]] = load i32, ptr [[PTR]], align 4
----------------
preames wrote:

I think you'd preserve test intent by adding nofree nosyc to this one (maybe with a name change), and then adding a separate one without it.

It isn't clear to my why with the additional attributes we still can't hoist the load.  That's concerning?

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


More information about the llvm-commits mailing list