Details
Diff Detail
Event Timeline
Hi,
Can you please explain what you are doing and why? Is there a functional change here? or just moving code around?
I can see a functional change
llvm/lib/Transforms/Utils/SimplifyCFG.cpp | ||
---|---|---|
1454 | Why? | |
1465 | This change looks fine. | |
1488 | Your new code is ignoring the operand index, so is more conservative than the old code. |
This patch is only to move the code around to avoid + avoid redundant computations.
llvm/lib/Transforms/Utils/SimplifyCFG.cpp | ||
---|---|---|
1454 | I can remove this if you want. | |
1488 | This code will only execute when IO is a store instruction. And stores have 2 operands, so that implies OI=1 is not needed when we hoist this code out of the loop. It appears OI==1 check was there because for stores second operand is the pointer operand, and for stores first operand (OI==0) is the pointer operand. |
Why?