llvm-6502/include/llvm/IR
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
..
Argument.h Remove the last of uses that use the Attribute object as a collection of attributes. 2013-01-23 06:14:59 +00:00
Attributes.h Remove default copy ctor/assignment, makes AttributeSet trivially copyable. 2013-03-18 12:14:30 +00:00
BasicBlock.h More copy editing. 2013-01-20 05:12:35 +00:00
CallingConv.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
CMakeLists.txt
Constant.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Constants.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
DataLayout.h Hoist the definition of getTypeSizeInBits to be inlinable and in the 2013-03-21 09:52:22 +00:00
DerivedTypes.h test commit to use consistent comment notation. 2013-03-01 16:49:35 +00:00
Function.h Add some additonal attribute helper functions. Test will be on follow 2013-03-13 20:20:08 +00:00
GlobalAlias.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
GlobalValue.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
GlobalVariable.h Changed in comment cxx -> C++. Thanks Richard Smith!. 2013-02-05 08:01:22 +00:00
InlineAsm.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
InstrTypes.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Instruction.def
Instruction.h Fix a bug in mayHaveSideEffects. Functions that do not return are now considered as instructions with side effects. 2013-02-19 20:02:09 +00:00
Instructions.h Fix tautological compare. Not sure why this didn't trigger any test failures. 2013-03-07 20:56:18 +00:00
IntrinsicInst.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Intrinsics.h Support for half intrinsics. Pushes MMX into slower encoding path. 2013-01-11 01:45:05 +00:00
Intrinsics.td Support for half intrinsics. Pushes MMX into slower encoding path. 2013-01-11 01:45:05 +00:00
IntrinsicsARM.td
IntrinsicsHexagon.td
IntrinsicsMips.td
IntrinsicsNVVM.td [NVPTX] Disable vector registers 2013-02-12 14:18:49 +00:00
IntrinsicsPowerPC.td
IntrinsicsR600.td
IntrinsicsX86.td
IntrinsicsXCore.td
IRBuilder.h Doxygenified some comments in IRBuilder.h. 2013-01-30 22:56:31 +00:00
LLVMContext.h Memory Dependence Analysis (not mem-dep test) take advantage of "invariant.load" metadata. 2013-03-06 17:48:48 +00:00
MDBuilder.h Fix indent and remove unneeded #includes in MDBuilder.h. 2013-01-10 22:00:36 +00:00
Metadata.h Remove trailing spaces. 2013-01-10 22:14:33 +00:00
Module.h [IR] Add 'Append' and 'AppendUnique' module flag behaviors. 2013-01-16 21:38:56 +00:00
OperandTraits.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Operator.h Use LLVM_DELETED_FUNCTION rather than '// do not implement' comments. 2013-02-18 23:11:17 +00:00
SymbolTableListTraits.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Type.h Make APFloat constructor require explicit semantics. 2013-01-22 09:46:31 +00:00
TypeBuilder.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
TypeFinder.h Move TypeFinder.h into the IR tree, it clearly belongs with the IR library. 2013-01-07 15:43:51 +00:00
Use.h Use LLVM_DELETED_FUNCTION rather than '// do not implement' comments. 2013-02-18 23:11:17 +00:00
User.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
Value.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00
ValueSymbolTable.h Fix include guards so they exactly match file names. 2013-01-10 00:45:19 +00:00