llvm/utils/TableGen
Dan Gohman 4fbd796a12 Change ConstantSDNode and ConstantFPSDNode to use ConstantInt* and
ConstantFP* instead of APInt and APFloat directly.

This reduces the amount of time to create ConstantSDNode
and ConstantFPSDNode nodes when ConstantInt* and ConstantFP*
respectively are already available, as is the case in
SelectionDAGBuild.cpp. Also, it reduces the amount of time
to legalize constants into constant pools, and the amount of
time to add ConstantFP operands to MachineInstrs, due to
eliminating ConstantInt::get and ConstantFP::get calls.

It increases the amount of work needed to create new constants
in cases where the client doesn't already have a ConstantInt*
or ConstantFP*, such as legalize expanding 64-bit integer constants
to 32-bit constants. And it adds a layer of indirection for the
accessor methods. But these appear to be outweight by the benefits
in most cases.

It will also make it easier to make ConstantSDNode and
ConstantFPNode more consistent with ConstantInt and ConstantFP.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56162 91177308-0d34-0410-b5e6-96231b3b80d8
2008-09-12 18:08:03 +00:00
..
AsmWriterEmitter.cpp Split ISD::LABEL into ISD::DBG_LABEL and ISD::EH_LABEL, eliminating 2008-07-01 00:05:16 +00:00
AsmWriterEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
CallingConvEmitter.cpp Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
CallingConvEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
CodeEmitterGen.cpp Eliminate a compile time warning. 2008-09-07 09:00:57 +00:00
CodeEmitterGen.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
CodeGenDAGPatterns.cpp Factor out the predicate check code from DAGISelEmitter.cpp 2008-08-22 00:20:26 +00:00
CodeGenDAGPatterns.h Factor out the predicate check code from DAGISelEmitter.cpp 2008-08-22 00:20:26 +00:00
CodeGenInstruction.cpp Teach the DAGISelEmitter to not compute the variable_ops operand 2008-05-31 02:11:25 +00:00
CodeGenInstruction.h Add a flag to indicate that an instruction is as cheap (or cheaper) than a move 2008-05-28 22:54:52 +00:00
CodeGenIntrinsics.h - Add "Commutative" property to intrinsics. This allows tblgen to generate the commuted variants for dagisel matching code. 2008-06-16 20:29:38 +00:00
CodeGenRegisters.h Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
CodeGenTarget.cpp Factor the code for determining the target-specific instruction 2008-08-20 21:45:57 +00:00
CodeGenTarget.h Factor the code for determining the target-specific instruction 2008-08-20 21:45:57 +00:00
DAGISelEmitter.cpp Change ConstantSDNode and ConstantFPSDNode to use ConstantInt* and 2008-09-12 18:08:03 +00:00
DAGISelEmitter.h Teach the DAGISelEmitter to not compute the variable_ops operand 2008-05-31 02:11:25 +00:00
FastISelEmitter.cpp Correctly handle physical register inputs. They are not explicit input operands in the resulting machine instrs. 2008-09-08 08:39:33 +00:00
FastISelEmitter.h Refactor a bunch of FastISelEmitter code into a helper class, and 2008-08-26 21:21:20 +00:00
InstrEnumEmitter.cpp split enum emission out from InstrInfoEmitter into it's own tblgen backend. 2008-01-06 00:49:05 +00:00
InstrEnumEmitter.h split enum emission out from InstrInfoEmitter into it's own tblgen backend. 2008-01-06 00:49:05 +00:00
InstrInfoEmitter.cpp Split ISD::LABEL into ISD::DBG_LABEL and ISD::EH_LABEL, eliminating 2008-07-01 00:05:16 +00:00
InstrInfoEmitter.h Move instruction flag inference out of InstrInfoEmitter and into 2008-04-03 00:02:49 +00:00
IntrinsicEmitter.cpp Added support for overloading intrinsics (atomics) based on pointers 2008-07-30 04:36:53 +00:00
IntrinsicEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
LLVMCConfigurationEmitter.cpp Add #includes required by GCC 4.3, thanks for Zhongxing Xu 2008-06-04 04:46:14 +00:00
LLVMCConfigurationEmitter.h Fix some headers. 2008-05-30 06:20:54 +00:00
Makefile remove attributions from tools/utils makefiles. 2007-12-29 20:07:17 +00:00
Record.cpp Remove some debug output from tblgen. This fixes a test. 2008-06-10 14:53:49 +00:00
Record.h lib/Target/SubtargetFeature.cpp asserts that the FeatureKV[] table be sorted 2008-09-11 17:05:32 +00:00
RegisterInfoEmitter.cpp Indentation. 2008-09-11 17:31:12 +00:00
RegisterInfoEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
SubtargetEmitter.cpp lib/Target/SubtargetFeature.cpp asserts that the FeatureKV[] table be sorted 2008-09-11 17:05:32 +00:00
SubtargetEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
TableGen.cpp Initial checkin of the new "fast" instruction selection support. See 2008-08-13 20:19:35 +00:00
TableGenBackend.cpp change getQualifiedName to be a global function. 2008-01-05 22:25:12 +00:00
TableGenBackend.h change getQualifiedName to be a global function. 2008-01-05 22:25:12 +00:00
TGLexer.cpp Change the MemoryBuffer::getFile* methods to take just a pointer to the 2008-04-01 18:04:03 +00:00
TGLexer.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
TGParser.cpp produce an error on invalid input instead of asserting: 2008-04-10 04:48:34 +00:00
TGParser.h remove attributions from utils. 2007-12-29 20:37:13 +00:00