llvm-6502/include/llvm
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
..
ADT Add DenseMap::lookup: 2008-08-29 00:48:44 +00:00
Analysis Reapply 55859. This doesn't change anything as 2008-09-08 11:05:51 +00:00
Assembly we should use 'class' for non-pod types instead of 'struct' to 2008-08-24 18:38:56 +00:00
Bitcode Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments 2008-09-09 01:02:47 +00:00
CodeGen Change ConstantSDNode and ConstantFPSDNode to use ConstantInt* and 2008-09-12 18:08:03 +00:00
Config Use C-style comments :) 2008-03-23 13:44:17 +00:00
Debugger Fix more -Wshorten-64-to-32 warnings. 2008-05-05 18:30:58 +00:00
ExecutionEngine Add new parameter Fast to createJIT to enable the fast codegen path. 2008-08-08 08:11:34 +00:00
Support plug memleak: destroy internal buffer 2008-09-02 12:06:08 +00:00
System add a helper method to sys::Path for clang, patch by 2008-08-11 23:39:47 +00:00
Target Eliminate some unused methods. 2008-09-11 17:31:47 +00:00
Transforms Tidy up several unbeseeming casts from pointer to intptr_t. 2008-09-04 17:05:41 +00:00
AbstractTypeUser.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Argument.h Fix a missing #include. Patch by Andrew John Hughes. 2008-08-28 00:20:07 +00:00
AutoUpgrade.h Enable first-class aggregates support. 2008-07-23 00:34:11 +00:00
BasicBlock.h Switch the asmprinter (.ll) and all the stuff it requires over to 2008-08-23 22:23:09 +00:00
CallGraphSCCPass.h Tidy up several unbeseeming casts from pointer to intptr_t. 2008-09-04 17:05:41 +00:00
CallingConv.h Tidy a doxygen comment. 2008-07-16 15:59:56 +00:00
Constant.h Switch the asmprinter (.ll) and all the stuff it requires over to 2008-08-23 22:23:09 +00:00
Constants.h Add a new ConstantExpr::getWithOperands that takes any array of operands 2008-08-20 22:27:40 +00:00
DerivedTypes.h Remove unused parameter. Some clients might use -Werror when compiling and 2008-06-05 07:24:08 +00:00
Function.h s/FP_AlwaysInline/FN_NOTE_AlwaysInline/g 2008-09-02 22:43:57 +00:00
GlobalAlias.h Make safer variant of alias resolution routine to be default 2008-09-09 20:05:04 +00:00
GlobalValue.h Add GlobalValue::{removeFromParent,eraseFromParent} 2008-08-29 07:30:15 +00:00
GlobalVariable.h Add GlobalValue::{removeFromParent,eraseFromParent} 2008-08-29 07:30:15 +00:00
InlineAsm.h Switch the asmprinter (.ll) and all the stuff it requires over to 2008-08-23 22:23:09 +00:00
InstrTypes.h Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments 2008-09-09 01:02:47 +00:00
Instruction.def Enable first-class aggregates support. 2008-07-23 00:34:11 +00:00
Instruction.h Switch the asmprinter (.ll) and all the stuff it requires over to 2008-08-23 22:23:09 +00:00
Instructions.h Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments 2008-09-09 01:02:47 +00:00
IntrinsicInst.h Split the SelectionDAG-building code, including the FunctionLoweringInfo 2008-09-03 16:12:24 +00:00
Intrinsics.h add missing #include 2008-04-30 04:56:14 +00:00
Intrinsics.td Reapply 55899: First draft of EH support on x86/64-linux 2008-09-08 21:12:47 +00:00
IntrinsicsARM.td remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
IntrinsicsCellSPU.td Final de-tabification. 2008-02-27 06:33:05 +00:00
IntrinsicsPowerPC.td Implement __sync_synchronize on ppc32. Patch by Gary Benson. 2008-08-22 17:20:54 +00:00
IntrinsicsX86.td SSE codegen for vsetcc nodes 2008-07-17 16:51:19 +00:00
LinkAllPasses.h Initial version of a Partial Specialization IPO pass. It triggers a couple hundred times on 176.gcc. I don't know the performance impact yet, the heuristic is quite simple still. 2008-09-03 21:00:28 +00:00
LinkAllVMCore.h prune unneeded #includes 2008-04-01 04:00:45 +00:00
Linker.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Module.h Switch the asmprinter (.ll) and all the stuff it requires over to 2008-08-23 22:23:09 +00:00
ModuleProvider.h Remove warnings about unused parameters and shadowed variables. 2008-05-19 20:15:12 +00:00
OperandTraits.h 80col 2008-07-05 22:41:37 +00:00
ParameterAttributes.h The inline keyword goes before the return type. This fixes a compiler warning. 2008-06-19 16:16:06 +00:00
Pass.h Add dom info verifier. 2008-07-01 17:44:24 +00:00
PassAnalysisSupport.h Speed up the passmgr by avoiding heap thrashing on vectors. 2008-08-08 05:33:04 +00:00
PassManager.h allow updating the MPM, so that you can use one FunctionPAssManager with 2008-06-26 22:26:45 +00:00
PassManagers.h Use SmallVector instead of std::vector 2008-08-12 15:44:31 +00:00
PassSupport.h Correct a comment. 2008-06-24 17:46:48 +00:00
SymbolTableListTraits.h Fold the useful features of alist and alist_node into ilist, and 2008-07-28 21:51:04 +00:00
Type.h remove dead method. 2008-08-23 22:43:21 +00:00
TypeSymbolTable.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Use.h Tidy SDNode::use_iterator, and complete the transition to have it 2008-07-27 20:43:25 +00:00
User.h Move some documentation from the header file into ProgrammersManual. About to improve. 2008-06-16 21:06:12 +00:00
Value.h we should use 'class' for non-pod types instead of 'struct' to 2008-08-24 18:38:56 +00:00
ValueSymbolTable.h implement some fixme's by making "autorenaming" in the value symbol table not 2008-06-27 21:26:26 +00:00