llvm-6502/include/llvm
Nick Lewycky 05da4dd998 Improve 'tail' call marking in TRE. A bootstrap of clang goes from 375k calls marked tail in the IR to 470k, however this improvement does not carry into an improvement of the call/jmp ratio on x86. The most common pattern is a tail call + br to a block with nothing but a 'ret'.
The number of tail call to loop conversions remains the same (1618 by my count).

The new algorithm does a local scan over the use-def chains to identify local "alloca-derived" values, as well as points where the alloca could escape. Then, a visit over the CFG marks blocks as being before or after the allocas have escaped, and annotates the calls accordingly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208017 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-05 23:59:03 +00:00
..
ADT Remove unused field hash_state::seed. 2014-04-30 21:12:17 +00:00
Analysis [LCG] Add the last (and most complex) of the edge insertion mutation 2014-05-04 09:38:32 +00:00
AsmParser
Bitcode
CodeGen Remove the -disable-cfi option. 2014-05-05 17:33:26 +00:00
Config
DebugInfo [DWARF parser] Turn DILineInfo into a struct. 2014-04-18 21:36:39 +00:00
ExecutionEngine Fix MSVC build broken by r207580 2014-04-29 22:04:55 +00:00
IR Improve 'tail' call marking in TRE. A bootstrap of clang goes from 375k calls marked tail in the IR to 470k, however this improvement does not carry into an improvement of the call/jmp ratio on x86. The most common pattern is a tail call + br to a block with nothing but a 'ret'. 2014-05-05 23:59:03 +00:00
IRReader
LineEditor
Linker
LTO Rename member variable to try to fix the bots. 2014-05-03 15:28:13 +00:00
MC Walk back commits for unused function parameters - they're still being 2014-05-05 23:26:59 +00:00
Object Add range access to ELFFile's sections collection. 2014-05-05 06:48:34 +00:00
Option
ProfileData
Support [Support/MemoryBuffer] Introduce a boolean parameter (false by default) 'IsVolatile' for the open file functions. 2014-05-05 21:55:51 +00:00
TableGen
Target Fix typo (also tab character). 2014-05-05 21:40:41 +00:00
Transforms Vectorize intrinsic math function calls in SLPVectorizer. 2014-05-03 09:59:54 +00:00
CMakeLists.txt
InitializePasses.h Add an optimization that does CSE in a group of similar GEPs. 2014-05-01 18:38:36 +00:00
LinkAllIR.h
LinkAllPasses.h Add an optimization that does CSE in a group of similar GEPs. 2014-05-01 18:38:36 +00:00
Pass.h
PassAnalysisSupport.h
PassManager.h
PassRegistry.h
PassSupport.h