summaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorPete Cooper <peter_cooper@apple.com>2015-05-07 21:48:26 +0000
committerPete Cooper <peter_cooper@apple.com>2015-05-07 21:48:26 +0000
commitba593ad3f345272ed49a01075c223580c338f875 (patch)
tree607ac9154fb34c339b25b1f3a60ed06d6346c2e7 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parentd6291964fb067fd0d294b97a861487c7c60d3292 (diff)
Clear kill flags in tail duplication.
If we duplicate an instruction then we must also clear kill flags on any uses we rewrite. Otherwise we might be killing a register which was used in other BBs. For example, here the entry BB ended up with these instructions, the ADD having been tail duplicated. %vreg24<def> = t2ADDri %vreg10<kill>, 1, pred:14, pred:%noreg, opt:%noreg; GPRnopc:%vreg24 rGPR:%vreg10 %vreg22<def> = COPY %vreg10; GPR:%vreg22 rGPR:%vreg10 The copy here is inserted after the add and so needs vreg10 to be live. llvm-svn: 236782
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions