llvm-6502/lib
Jakob Stoklund Olesen ee27cac9fa Avoid high-latency false CPSR dependencies even for tMOVSi.
The Thumb2SizeReduction pass avoids false CPSR dependencies, except it
still aggressively creates tMOVi8 instructions because they are so
common.

Avoid creating false CPSR dependencies even for tMOVi8 instructions when
the the CPSR flags are known to have high latency. This allows integer
computation to overlap floating point computations.

Also process blocks in a reverse post-order and propagate high-latency
flags to successors.

<rdar://problem/13468102>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178773 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-04 18:25:36 +00:00
..
Analysis
Archive
AsmParser
Bitcode
CodeGen Formatting 2013-04-04 18:03:41 +00:00
DebugInfo
ExecutionEngine
IR Measure time that IR parsing took as part of the -time-passes measurement. 2013-04-03 15:33:45 +00:00
IRReader Measure time that IR parsing took as part of the -time-passes measurement. 2013-04-03 15:33:45 +00:00
Linker
MC
Object
Option
Support Ensuring that both bits are set, and not just a combination of one or the other. 2013-04-03 18:00:22 +00:00
TableGen
Target Avoid high-latency false CPSR dependencies even for tMOVSi. 2013-04-04 18:25:36 +00:00
Transforms Refactored out the helper method FindPredecessorAutoreleaseWithSafePath from ObjCARCOpt::OptimizeReturns. 2013-04-03 23:39:14 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile