[PATCH] D21496: LoadCombine Load Aliasing Fix

River Riddle via llvm-commits llvm-commits at lists.llvm.org
Sat Jun 18 18:29:48 PDT 2016


rriddle added inline comments.

================
Comment at: /Users/rriddle/Desktop/llvm/llvm/test/Transforms/LoadCombine/load-combine-alias.ll:12
@@ +11,3 @@
+  %i1 = getelementptr inbounds %struct.Str, %struct.Str* %1, i64 0, i32 0
+  store i32 %0, i32* %i1, align 4
+  %add.ptr = getelementptr inbounds i32, i32* %i, i64 1
----------------
eli.friedman wrote:
> What transform is this testcase checking for?  I don't think you can prove any useful aliasing property between %i, %i1, and %str?
In the current implementation %1 is being aliased in that store operation which would cause every load chain to try and combine which would prevent the load at %0 from being able to combine with %2, %4, etc.



http://reviews.llvm.org/D21496





More information about the llvm-commits mailing list