Go to file
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
clang clang-format: Fix corner case in template detection. 2016-02-05 14:17:16 +00:00
clang-tools-extra Unbreak the cmake shared build. 2016-02-05 11:38:50 +00:00
compiler-rt Fix the libdir suffix for LLVM_CMAKE_PATH 2016-02-04 23:15:29 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc Implement modf math builtin 2016-01-27 14:52:10 +00:00
libcxx Fix the search path for CMake files 2016-02-04 23:17:20 +00:00
libcxxabi [libcxxabi] Teach cxa_demangle about Hexagon's long double size 2016-01-20 14:10:23 +00:00
libunwind Replace cmake check for printf with a check for fopen. 2015-12-10 00:47:08 +00:00
lld Rename IsUsedInDynamicReloc to MustBeInDynSym. 2016-02-05 15:27:15 +00:00
lldb Add support to detect arm hard float ABI based binaries for ABISysV_arm 2016-02-05 14:37:53 +00:00
llgo [llgo] Force exporting __morestack from llgoi 2015-11-27 04:46:46 +00:00
llvm Some stackslots are allocated to vregs which have no real reference. 2016-02-05 18:14:24 +00:00
openmp [CMake] Introduce OPENMP_LLVM_TOOLS_DIR 2016-02-05 07:00:13 +00:00
polly Support accesses with differently sized types to the same array 2016-02-04 13:18:42 +00:00