llvm-project/llvm/lib
Bill Wendling 1ab79c6db3 Implement a more intelligent way of spilling uses across an invoke boundary.
The old way of determine when and where to spill a value that was used inside of
a landing pad resulted in spilling that value everywhere and not just at the
invoke edge.

This algorithm determines which values are used within a landing pad. It then
spills those values before the invoke and reloads them before the uses. This
should prevent excessive spilling in many cases, e.g. inside of loops.
<rdar://problem/10609139>

llvm-svn: 152486
2012-03-10 07:11:55 +00:00
..
Analysis Factor out the analysis of addition and subtraction in ComputeMaskedBits. Reuse 2012-03-09 09:23:50 +00:00
Archive Avoid using an invalidated iterator. 2012-01-23 05:07:16 +00:00
AsmParser Convert assert(0) to llvm_unreachable 2012-02-07 05:05:23 +00:00
Bitcode Taken into account Duncan's comments for r149481 dated by 2nd Feb 2012: 2012-03-08 07:06:20 +00:00
CodeGen Implement a more intelligent way of spilling uses across an invoke boundary. 2012-03-10 07:11:55 +00:00
DebugInfo More dead code removal (using -Wunreachable-code) 2012-01-20 21:51:11 +00:00
ExecutionEngine Taken into account Duncan's comments for r149481 dated by 2nd Feb 2012: 2012-03-08 07:06:20 +00:00
Linker Include cctype for isdigit. Patch by Stephen Hines. 2012-03-03 09:36:58 +00:00
MC Make MCRegisterInfo available to the the MCInstPrinter. 2012-03-05 19:33:20 +00:00
Object [Object] 2012-03-09 20:41:57 +00:00
Support Add support for r600 (AMD GPUs HD2XXX - HD6XXX) target triplet. 2012-03-09 10:09:36 +00:00
TableGen Fix infinite loop in nested multiclasses. 2012-03-07 16:39:35 +00:00
Target Do not custom lower i64 nodes if i64 is not a legal type. Move lines that set 2012-03-10 00:03:50 +00:00
Transforms Add statistics on removed switch cases, and fix the phi statistic 2012-03-09 19:21:15 +00:00
VMCore Taken into account Duncan's comments for r149481 dated by 2nd Feb 2012: 2012-03-08 07:06:20 +00:00
CMakeLists.txt Move TableGen's parser and entry point into a library 2011-10-01 16:41:13 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile Remove more of llvmc and dependencies. 2011-09-20 00:34:27 +00:00