llvm-6502/lib
Moritz Roth d84561bf69 ARM: Fix and re-enable load/store optimizer for Thumb1.
In a previous iteration of the pass, we would try to compensate for
writeback by updating later instructions and/or inserting a SUBS to
reset the base register if necessary.
Since such a SUBS sets the condition flags it's not generally safe to do
this. For now, only merge LDR/STRs if there is no writeback to the base
register (LDM that loads into the base register) or the base register is
killed by one of the merged instructions. These cases are clear wins
both in terms of instruction count and performance.

Also add three new test cases, and update the existing ones accordingly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215729 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-15 17:00:30 +00:00
..
Analysis In LVI(Lazy Value Info), originally value on a BB can only be caculated once, 2014-08-11 05:02:04 +00:00
AsmParser Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Bitcode Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
CodeGen Delete dead code. NFC. 2014-08-15 14:58:22 +00:00
DebugInfo Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
ExecutionEngine [MCJIT] Support DisableSymbolSearching and InstallLazyFunctionCreator in MCJIT. 2014-08-14 02:38:20 +00:00
IR Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
IRReader Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
LineEditor
Linker Don't upgrade global constructors when reading bitcode 2014-08-12 16:46:37 +00:00
LTO Don't internalize all but main by default. 2014-08-05 20:10:38 +00:00
MC Make EmitAbsValue an static helper. 2014-08-15 15:12:13 +00:00
Object Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Option Generic: add range-adapter for option parsing. 2014-07-09 13:03:37 +00:00
ProfileData Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Support Delete support for AuroraUX. 2014-08-14 15:15:09 +00:00
TableGen Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Target ARM: Fix and re-enable load/store optimizer for Thumb1. 2014-08-15 17:00:30 +00:00
Transforms Introduce a helper to combine instruction metadata. 2014-08-15 15:46:38 +00:00
CMakeLists.txt ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00
LLVMBuild.txt ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00
Makefile ProfileData: Introduce the InstrProfReader interface and a text reader 2014-03-21 17:24:48 +00:00