llvm-6502/test
Tim Northover 4e399f4500 ARM: rework Thumb1 frame index rewriting
The previous code had a few problems, motivating the choices here.

1. It could create instructions clobbering CPSR, but the incoming MachineInstr
   didn't reflect this. A potential source of corruption. This is why the patch
   has a new PseudoInst for before lowering.
2. Similarly, there was some code to handle the incoming instruction not being
   ARMCC::AL, but this would have caused massive problems if it was actually
   invoked when a complex offset needing more than one instruction was requested.
3. It wasn't designed to handle unaligned pointers (or offsets). These should
   probably be minimised anyway, but the code needs to deal with them properly
   regardless.
4. It had some rather dubious ad-hoc code to avoid calling
   emitThumbRegPlusImmediate, a function which should be designed to do precisely
   this job.

We seem to cover the common cases correctly now, and hopefully can enhance
emitThumbRegPlusImmediate to handle any extra optimisations we need to add in
future.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220236 91177308-0d34-0410-b5e6-96231b3b80d8
2014-10-20 21:28:41 +00:00
..
Analysis [DSE] Remove no-data-layout-only type-based overlap checking 2014-10-17 11:56:00 +00:00
Assembler Delete -std-compile-opts. 2014-10-16 20:00:02 +00:00
Bindings Disable ccache for go tests. 2014-10-17 18:32:36 +00:00
Bitcode
BugPoint
CodeGen ARM: rework Thumb1 frame index rewriting 2014-10-20 21:28:41 +00:00
DebugInfo [dwarfdump] Prettyprint DW_AT_APPLE_property_attribute bitfield values. 2014-10-10 15:51:10 +00:00
ExecutionEngine
Feature Delete -std-compile-opts. 2014-10-16 20:00:02 +00:00
FileCheck
Instrumentation [msan] Fix handling of byval arguments with large alignment. 2014-10-17 23:29:44 +00:00
Integer
JitListener
Linker [dwarfdump] Print the name for referenced specification of abstract_origin DIEs. 2014-10-06 03:36:31 +00:00
LTO
MC [Thumb2] RFE, SRS and "SUBS pc, lr" are undefined on v7M 2014-10-20 15:37:35 +00:00
Object Suppress llvm-ar's MRI tests for now on win32, since line_iterator is incompatible to CRLF. 2014-10-11 22:21:27 +00:00
Other
TableGen
tools [llvm-objdump] don't test timestamp dump as that is time zone dependent 2014-10-18 02:28:01 +00:00
Transforms Fix a miscompile introduced in r220178. 2014-10-20 10:03:01 +00:00
Unit
Verifier [Stackmaps] Enable invoking the patchpoint intrinsic. 2014-10-17 17:39:00 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
lit.site.cfg.in Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
Makefile Initial version of Go bindings. 2014-10-16 22:48:02 +00:00
Makefile.tests
TestRunner.sh