llvm-6502/lib
Chandler Carruth c57f5dd8bd Hoist the definition of getTypeSizeInBits to be inlinable and in the
header.

This method is called in the hot path for *many* passes, SROA is what
caught my interest. A common pattern is that which branch of the switch
should be taken is known in the callsite and so it is a very good
candidate for inlining and simplification. Moving it into the header
allows the optimizer to fold a lot of boring, repeatitive code in
callers of this routine.

I'm seeing pretty significant speedups in parts of SROA and I suspect
other passes will see similar speedups if they end up working with type
sizes frequently. I've not seen any significant growth of the binaries
as a consequence, but let me know if you see anything suspicious here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177632 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-21 09:52:22 +00:00
..
Analysis Remove 'else' after 'return'. 2013-03-20 23:53:45 +00:00
Archive
AsmParser
Bitcode
CodeGen Fix missing std::. Not sure how this compiles for anyone else. 2013-03-21 00:57:21 +00:00
DebugInfo Fix missing std::. Not sure how this compiles for anyone else. 2013-03-21 00:57:21 +00:00
ExecutionEngine
IR Hoist the definition of getTypeSizeInBits to be inlinable and in the 2013-03-21 09:52:22 +00:00
Linker The Linker interface has some dead code after the cleanup in r172749 2013-03-19 15:26:24 +00:00
MC Dead code. 2013-03-19 22:13:05 +00:00
Object
Option
Support Use pre-inc, pre-dec when possible. 2013-03-20 23:56:19 +00:00
TableGen Make sure TableGen exits with an error code after printing errors. 2013-03-20 20:43:11 +00:00
Target Add a WriteMicrocoded for ancient microcoded instructions. 2013-03-21 00:07:17 +00:00
Transforms [SROA] Prefix names using a custom IRBuilder inserter. 2013-03-21 09:52:18 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile