llvm-6502/lib
Richard Sandiford 1ce4894a3f [SystemZ] Use MVC to spill loads and stores
Try to use MVC when spilling the destination of a simple load or the source
of a simple store.  As explained in the comment, this doesn't yet handle
the case where the load or store location is also a frame index, since
that could lead to two simultaneous scavenger spills, something the
backend can't handle yet.  spill-02.py tests that this restriction kicks in,
but unfortunately I've not yet found a case that would fail without it.
The volatile trick I used for other scavenger tests doesn't work here
because we can't use MVC for volatile accesses anyway.

I'm planning on relaxing the restriction later, hopefully with a test
that does trigger the problem...

Tests @f8 and @f9 also showed that L(G)RL and ST(G)RL were wrongly
classified as SimpleBDX{Load,Store}.  It wouldn't be easy to test for
that bug separately, which is why I didn't split out the fix as a
separate patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185434 91177308-0d34-0410-b5e6-96231b3b80d8
2013-07-02 15:28:56 +00:00
..
Analysis ValueTracking: Teach isKnownToBeAPowerOfTwo about (ADD X, (XOR X, Y)) where X is a power of two 2013-06-29 23:44:53 +00:00
AsmParser Added support for the Builtin attribute. 2013-06-27 00:25:01 +00:00
Bitcode Remove the Copied parameter from MemoryObject::readBytes. 2013-05-24 10:54:58 +00:00
CodeGen DAGCombiner: fix use-counting issue when forming zextload 2013-07-02 09:58:53 +00:00
DebugInfo Spell correct (s/begining/beginning/) 2013-06-19 21:42:05 +00:00
ExecutionEngine Fixed alignment of code sections in the JIT mode. Added a test to the JITMemoryManager. 2013-07-02 12:24:22 +00:00
IR IRVerifier: Correctly check attribute types 2013-07-02 03:28:10 +00:00
IRReader keep only the StringRef version of getFileOrSTDIN. 2013-06-25 05:28:34 +00:00
Linker Extend RemapInstruction and friends to take an optional new parameter, a ValueMaterializer. 2013-05-28 15:17:05 +00:00
MC [PowerPC] Add support for TLS data relocations 2013-07-01 23:33:29 +00:00
Object Make a switch in createBinary fully-covered. Add forgotten macho_dsym_companion case. 2013-06-28 09:44:05 +00:00
Option Fix a crash bug in dumping options with groups 2013-06-26 22:43:37 +00:00
Support [APFloat] Ensure that we can properly parse strings that do not have null terminators. 2013-07-01 23:54:08 +00:00
TableGen keep only the StringRef version of getFileOrSTDIN. 2013-06-25 05:28:34 +00:00
Target [SystemZ] Use MVC to spill loads and stores 2013-07-02 15:28:56 +00:00
Transforms Revert r185257 (InstCombine: Be more agressive optimizing 'udiv' instrs with 'select' denoms) 2013-07-02 05:21:11 +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