llvm-6502/lib
Chandler Carruth 8af8091ef5 [MBP] Add flags to disable the BadCFGConflict check in MachineBlockPlacement.
Some benchmarks have shown that this could lead to a potential
performance benefit, and so adding some flags to try to help measure the
difference.

A possible explanation. In diamond-shaped CFGs (A followed by either
B or C both followed by D), putting B and C both in between A and
D leads to the code being less dense than it could be. Always either
B or C have to be skipped increasing the chance of cache misses etc.
Moving either B or C to after D might be beneficial on average.

In the long run, but we should probably do a better job of analyzing the
basic block and branch probabilities to move the correct one of B or
C to after D. But even if we don't use this in the long run, it is
a good baseline for benchmarking.

Original patch authored by Daniel Jasper with test tweaks and a second
flag added by me.

Differential Revision: http://reviews.llvm.org/D6969

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226034 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-14 20:19:29 +00:00
..
Analysis [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
AsmParser
Bitcode Add support for comdats with names larger than 256 characters. 2015-01-14 18:25:45 +00:00
CodeGen [MBP] Add flags to disable the BadCFGConflict check in MachineBlockPlacement. 2015-01-14 20:19:29 +00:00
DebugInfo [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
ExecutionEngine [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
IR IR: Fix a use-after-free in RAUW 2015-01-14 19:56:10 +00:00
IRReader
LineEditor
Linker
LTO
MC Revert "Add r224985 back with two fixes." 2015-01-14 19:07:23 +00:00
Object [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
Option [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
ProfileData [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
Support [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
TableGen
Target [PPC64] Add support for the ICBT instruction on POWER8. 2015-01-14 20:17:10 +00:00
Transforms InstCombine: Don't take A-B<0 into A<B if A-B has other uses 2015-01-14 19:26:56 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile