Correctly estimate SROA savings for store operands in inline cost analysis.
authorWei Mi <wmi@google.com>
Fri, 20 Mar 2015 18:33:12 +0000 (18:33 +0000)
committerWei Mi <wmi@google.com>
Fri, 20 Mar 2015 18:33:12 +0000 (18:33 +0000)
commit6c428d6ff60dff05c132f389b87bc36feb4afc1b
tree87107e18f5b5671358353508f19e9c09be63654d
parent9e77de2a1ef5715a56448df843a864bad30194a1
Correctly estimate SROA savings for store operands in inline cost analysis.

When estimating SROA savings, we want to see if an address is derived
off an alloca in the caller. For store instructions, operand 1 is the
address operand, but the current code uses operand 0.  Use
getPointerOperand for loads and stores to fix this.

Patch by Easwaran Raman.
http://reviews.llvm.org/D8425

llvm-svn: 232827
llvm/lib/Analysis/IPA/InlineCost.cpp
llvm/test/Transforms/Inline/store-sroa.ll [new file with mode: 0644]