llvm-project/llvm/lib
Wei Mi a62f058989 Some stackslots are allocated to vregs which have no real reference.
LiveRangeEdit::eliminateDeadDef is used to remove dead define instructions
after rematerialization. To remove a VNI for a vreg from its LiveInterval,
LiveIntervals::removeVRegDefAt is used. However, after non-PHI VNIs are all
removed, PHI VNI are still left in the LiveInterval. Such unused vregs will
be kept in RegsToSpill[] at the end of InlineSpiller::reMaterializeAll and
spiller will allocate stackslot for them.

The fix is to get rid of unused reg by checking whether it has non-dbg
reference instead of whether it has non-empty interval.

llvm-svn: 259895
2016-02-05 18:14:24 +00:00
..
Analysis Fix a regression for r259736. 2016-02-04 19:17:33 +00:00
AsmParser Remove autoconf support 2016-01-26 21:29:08 +00:00
Bitcode [ThinLTO] Ensure function summary output order is stable 2016-02-01 20:16:35 +00:00
CodeGen Some stackslots are allocated to vregs which have no real reference. 2016-02-05 18:14:24 +00:00
DebugInfo [DebugInfo] Eliminate compilation warning about used variable LSDA 2016-02-05 09:24:34 +00:00
ExecutionEngine [Orc] Turn OrcX86_64::IndirectStubsInfo into a template helper class: 2016-02-02 19:31:15 +00:00
Fuzzer [libFuzzer] hot fix a test 2016-02-04 00:12:28 +00:00
IR Fix pointers to go on the right hand side. NFC. 2016-02-03 21:34:39 +00:00
IRReader Remove autoconf support 2016-01-26 21:29:08 +00:00
LTO Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00
LibDriver Remove autoconf support 2016-01-26 21:29:08 +00:00
LineEditor Remove autoconf support 2016-01-26 21:29:08 +00:00
Linker Improve efficiency of handling unmapped subprogram metadata 2016-01-28 15:08:09 +00:00
MC [MC] Add support for encoding CodeView variable definition ranges 2016-02-05 01:55:49 +00:00
Object Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00
Option Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
Passes Remove autoconf support 2016-01-26 21:29:08 +00:00
ProfileData Move classes defined in a cpp file into an anonymous namespace. 2016-02-05 13:50:53 +00:00
Support [Support] Use range-based for loop. NFC 2016-02-04 06:51:41 +00:00
TableGen Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
Target AMDGPU/SI: Correctly initialize SIInsertWaits pass 2016-02-05 17:42:38 +00:00
Transforms [LoopUnrolling] Try harder to avoid rebuilding LCSSA when possible. 2016-02-05 02:17:36 +00:00
CMakeLists.txt LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00