llvm-6502/lib
Andrew Trick 8adae96fd9 Evict local live ranges if they can be reassigned.
The previous change to local live range allocation also suppressed
eviction of local ranges. In rare cases, this could result in more
expensive register choices. This commit actually revives a feature
that I added long ago: check if live ranges can be reassigned before
eviction. But now it only happens in rare cases of evicting a local
live range because another local live range wants a cheaper register.

The benefit is improved code size for some benchmarks on x86 and armv7.

I measured no significant compile time increase and performance
changes are noise.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187140 91177308-0d34-0410-b5e6-96231b3b80d8
2013-07-25 18:35:19 +00:00
..
Analysis Treat nothrow forms of ::operator delete and ::operator delete[] as 2013-07-21 23:11:42 +00:00
AsmParser Target/X86: Add explicit Win64 and System V/x86-64 calling conventions. 2013-07-12 06:02:35 +00:00
Bitcode Add a wrapper for open. 2013-07-16 19:44:17 +00:00
CodeGen Evict local live ranges if they can be reassigned. 2013-07-25 18:35:19 +00:00
DebugInfo DebugInfo: Factor out parsing compile unit DIEs to a separate function. Improve code style and comments. 2013-07-15 08:43:35 +00:00
ExecutionEngine AArch64: don't mask off shift bits when processing JIT relocations. 2013-07-25 12:42:52 +00:00
IR Add a way to add a kind-value string pair to an attribute. 2013-07-25 18:34:24 +00:00
IRReader Add 'const' qualifiers to static const char* variables. 2013-07-16 01:17:10 +00:00
Linker
MC Revert "Remove use of asymmetric std::lower_bound comparator." 2013-07-23 17:44:11 +00:00
Object Delete the buffer in createObjectFile if it fails. 2013-07-24 14:00:26 +00:00
Option Silence gcc warning. 2013-07-22 21:29:28 +00:00
Support Don't end a file name with a dot. It looks odd. 2013-07-25 15:00:17 +00:00
TableGen keep only the StringRef version of getFileOrSTDIN. 2013-06-25 05:28:34 +00:00
Target AArch64: fix even more JIT failures 2013-07-25 16:03:54 +00:00
Transforms Respect llvm.used in Internalize. 2013-07-25 03:23:25 +00:00
CMakeLists.txt Move lib/Archive to tools/llvm-ar. 2013-06-17 15:47:20 +00:00
LLVMBuild.txt Move lib/Archive to tools/llvm-ar. 2013-06-17 15:47:20 +00:00
Makefile Move lib/Archive to tools/llvm-ar. 2013-06-17 15:47:20 +00:00