llvm-6502/lib/CodeGen/SelectionDAG
Chris Lattner 071c62fad0 Rearrange handling of jump tables. Highlights:
1. MachineJumpTableInfo is now created lazily for a function the first time
   it actually makes a jump table instead of for every function.
2. The encoding of jump table entries is now described by the
   MachineJumpTableInfo::JTEntryKind enum.  This enum is determined by the
   TLI::getJumpTableEncoding() hook, instead of by lots of code scattered
   throughout the compiler that "knows" that jump table entries are always
   32-bits in pic mode (for example).
3. The size and alignment of jump table entries is now calculated based on
   their kind, instead of at machinefunction creation time.

Future work includes using the EntryKind in more places in the compiler,
eliminating other logic that "knows" the layout of jump tables in various
situations.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94470 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-25 23:26:13 +00:00
..
CallingConvLower.cpp Change errs() to dbgs(). 2010-01-05 01:24:50 +00:00
CMakeLists.txt Rename SelectionDAGLowering to SelectionDAGBuilder, and rename 2009-11-23 18:04:58 +00:00
DAGCombiner.cpp Fold (add x, shl(0 - y, n)) -> sub(x, shl(y, n)), to simplify some code 2010-01-19 23:30:49 +00:00
FastISel.cpp Revert 93811 per request. 2010-01-19 00:10:52 +00:00
FunctionLoweringInfo.cpp Trim unneeded includes. 2010-01-21 21:44:43 +00:00
FunctionLoweringInfo.h Move CopyCatchInfo into FunctionLoweringInfo.cpp too, for consistency. 2009-11-23 18:12:11 +00:00
InstrEmitter.cpp Trim unneeded includes. 2010-01-21 21:44:43 +00:00
InstrEmitter.h Fix a typo in a comment. 2009-11-16 20:35:59 +00:00
LegalizeDAG.cpp Rearrange handling of jump tables. Highlights: 2010-01-25 23:26:13 +00:00
LegalizeFloatTypes.cpp Change errs() to dbgs(). 2010-01-05 01:24:48 +00:00
LegalizeIntegerTypes.cpp Change errs() to dbgs(). 2010-01-05 01:24:34 +00:00
LegalizeTypes.cpp Change errs() to dbgs(). 2010-01-05 01:25:04 +00:00
LegalizeTypes.h It seems better to scalarize vectors of size 1 instead of widening them. 2010-01-24 00:24:43 +00:00
LegalizeTypesGeneric.cpp Remove dead variable. 2009-12-28 01:00:12 +00:00
LegalizeVectorOps.cpp Revert an earlier change to SIGN_EXTEND_INREG for vectors. The VTSDNode 2010-01-09 02:13:55 +00:00
LegalizeVectorTypes.cpp It seems better to scalarize vectors of size 1 instead of widening them. 2010-01-24 00:24:43 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
ScheduleDAGFast.cpp Trim unneeded includes. 2010-01-21 21:44:43 +00:00
ScheduleDAGList.cpp Change errs() to dbgs(). 2010-01-05 01:24:43 +00:00
ScheduleDAGRRList.cpp Remove the '-disable-scheduling' flag and replace it with the 'source' option of 2010-01-23 10:26:57 +00:00
ScheduleDAGSDNodes.cpp Enable pre-regalloc scheduling load clustering by default. 2010-01-22 23:49:45 +00:00
ScheduleDAGSDNodes.h Teach pre-regalloc scheduler to schedule loads from nearby addresses. It may improve cache locality. This is controlled by -cluster-loads for now. 2010-01-22 03:36:51 +00:00
SDNodeOrdering.h Allow 0 as an order number. Don't assign an order to formal arguments. 2009-12-22 21:35:02 +00:00
SelectionDAG.cpp Remove the '-disable-scheduling' flag and replace it with the 'source' option of 2010-01-23 10:26:57 +00:00
SelectionDAGBuilder.cpp Rearrange handling of jump tables. Highlights: 2010-01-25 23:26:13 +00:00
SelectionDAGBuilder.h whitespace cleanup 2010-01-01 23:37:34 +00:00
SelectionDAGISel.cpp Remove the '-disable-scheduling' flag and replace it with the 'source' option of 2010-01-23 10:26:57 +00:00
SelectionDAGPrinter.cpp Change errs() to dbgs(). 2010-01-05 01:24:45 +00:00
TargetLowering.cpp Rearrange handling of jump tables. Highlights: 2010-01-25 23:26:13 +00:00