llvm-6502/utils/TableGen
Dan Gohman c76909abfe Improve MachineMemOperand handling.
- Allocate MachineMemOperands and MachineMemOperand lists in MachineFunctions.
   This eliminates MachineInstr's std::list member and allows the data to be
   created by isel and live for the remainder of codegen, avoiding a lot of
   copying and unnecessary translation. This also shrinks MemSDNode.
 - Delete MemOperandSDNode. Introduce MachineSDNode which has dedicated
   fields for MachineMemOperands.
 - Change MemSDNode to have a MachineMemOperand member instead of its own
   fields with the same information. This introduces some redundancy, but
   it's more consistent with what MachineInstr will eventually want.
 - Ignore alignment when searching for redundant loads for CSE, but remember
   the greatest alignment.

Target-specific code which previously used MemOperandSDNodes with generic
SDNodes now use MemIntrinsicSDNodes, with opcodes in a designated range
so that the SelectionDAG framework knows that MachineMemOperand information
is available.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82794 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-25 20:36:54 +00:00
..
AsmMatcherEmitter.cpp llvm-mc/AsmParser: Match hard coded registers (e.g. 'shldl %cl, %eax, %eax') 2009-08-11 23:23:44 +00:00
AsmMatcherEmitter.h Stub out assembly matcher (.s -> MCInst) tblgen backend. 2009-07-11 19:39:44 +00:00
AsmWriterEmitter.cpp add a comment. 2009-09-18 18:10:19 +00:00
AsmWriterEmitter.h make tblgen produce a function that returns the name for a physreg. 2009-09-13 20:08:00 +00:00
CallingConvEmitter.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00
CallingConvEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
ClangDiagnosticsEmitter.cpp Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
ClangDiagnosticsEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
CMakeLists.txt Update CMakeLists.txt 2009-07-11 21:53:14 +00:00
CodeEmitterGen.cpp Convert more abort() calls to llvm_report_error(). 2009-07-08 19:04:27 +00:00
CodeEmitterGen.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
CodeGenDAGPatterns.cpp PR4795: Remove EEVT::isFP, isInt and isVec types used by TableGen's type 2009-08-29 05:53:25 +00:00
CodeGenDAGPatterns.h PR4795: Remove EEVT::isFP, isInt and isVec types used by TableGen's type 2009-08-29 05:53:25 +00:00
CodeGenInstruction.cpp Fix bad length argument to substr calls. Apparently I'm the first one to 2009-08-26 22:50:39 +00:00
CodeGenInstruction.h
CodeGenIntrinsics.h Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
CodeGenRegisters.h Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
CodeGenTarget.cpp Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
CodeGenTarget.h Split EVT into MVT and EVT, the former representing _just_ a primitive type, while 2009-08-11 20:47:22 +00:00
DAGISelEmitter.cpp Improve MachineMemOperand handling. 2009-09-25 20:36:54 +00:00
DAGISelEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
FastISelEmitter.cpp Remove some unused variables and methods warned about by 2009-09-06 08:33:48 +00:00
FastISelEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
InstrEnumEmitter.cpp Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
InstrEnumEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
InstrInfoEmitter.cpp prune the #includes in raw_ostream.h by moving a 2009-08-24 03:52:50 +00:00
InstrInfoEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
IntrinsicEmitter.cpp Push LLVMContexts through the IntegerType APIs. 2009-08-13 21:58:54 +00:00
IntrinsicEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
LLVMCConfigurationEmitter.cpp Use raw_ostream::indent instead of passing strings. 2009-09-21 15:53:44 +00:00
LLVMCConfigurationEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
Makefile
Record.cpp convert some stuff to StringRef to avoid temporary std::strings. 2009-09-18 18:31:37 +00:00
Record.h convert some stuff to StringRef to avoid temporary std::strings. 2009-09-18 18:31:37 +00:00
RegisterInfoEmitter.cpp eliminate the TargetRegisterDesc::AsmName field, the asmprinters now have this table. 2009-09-13 22:45:04 +00:00
RegisterInfoEmitter.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
StringToOffsetTable.h move StringToOffsetTable out to its own header. 2009-09-14 01:19:16 +00:00
SubtargetEmitter.cpp Make the end-of-itinerary mark explicit. Some cleanup. 2009-09-24 20:22:50 +00:00
SubtargetEmitter.h Extend the instruction itinerary model to include the ability to indicate the def and use cycle for each operand. This additional information is optional, so existing itineraries do not need to be changed. 2009-08-17 16:02:57 +00:00
TableGen.cpp Make LLVM command-line tools overwrite their output files without -f. 2009-08-25 15:34:52 +00:00
TableGenBackend.cpp Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
TableGenBackend.h Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
TGLexer.cpp Replace std::iostreams with raw_ostream in TableGen. 2009-07-03 00:10:29 +00:00
TGLexer.h prune #include, fix warning. 2009-06-21 05:33:06 +00:00
TGParser.cpp This void is implicit in C++. 2009-08-12 22:10:57 +00:00
TGParser.h
TGValueTypes.cpp Add contexts to some of the MVT APIs. No functionality change yet, just the infrastructure work needed to get the contexts to where they need to be first. 2009-08-12 00:36:31 +00:00