llvm-6502/utils/TableGen
Chris Lattner 82781b938a Teach the grouper some simple tricks about looking contradictory
predicates.  For example if we have:

Scope:
  CheckType i32
    ABC
  CheckType f32
    DEF
  CheckType i32
    GHI

Then we know that we can transform this into:
Scope:
  CheckType i32
    Scope
      ABC
      GHI
  CheckType f32
    DEF

This reorders the check for the 'GHI' predicate above
the check for the 'DEF' predidate.  However it is safe to do this
in this situation because we know that a node cannot have both an
i32 and f32 type.

We're now doing more factoring that the old isel did.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97312 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-27 07:49:13 +00:00
..
AsmMatcherEmitter.cpp MC: Fix bug where trailing tied operands were forgotten; the X86 assembler 2010-02-12 01:46:54 +00:00
AsmMatcherEmitter.h
AsmWriterEmitter.cpp enhance llvm-mc -show-inst to print the enum of an instruction, like so: 2010-02-11 22:57:32 +00:00
AsmWriterEmitter.h enhance llvm-mc -show-inst to print the enum of an instruction, like so: 2010-02-11 22:57:32 +00:00
AsmWriterInst.cpp Changed AsmWriterOperand to also include the index of the 2010-02-10 02:27:43 +00:00
AsmWriterInst.h Changed AsmWriterOperand to also include the index of the 2010-02-10 02:27:43 +00:00
CallingConvEmitter.cpp
CallingConvEmitter.h
ClangDiagnosticsEmitter.cpp
ClangDiagnosticsEmitter.h
CMakeLists.txt The new isel passes all tests, time to start making it go fast. 2010-02-24 07:06:50 +00:00
CodeEmitterGen.cpp move target-independent opcodes out of TargetInstrInfo 2010-02-09 19:54:29 +00:00
CodeEmitterGen.h
CodeGenDAGPatterns.cpp use DEBUG instead of DebugFlag directly so that this 2010-02-27 06:51:44 +00:00
CodeGenDAGPatterns.h merge some code. 2010-02-23 06:16:51 +00:00
CodeGenInstruction.cpp Introduce a new CodeGenInstruction::ConstraintInfo class 2010-02-10 01:45:28 +00:00
CodeGenInstruction.h work around a gcc bug with -Wuninitialized. 2010-02-10 21:22:51 +00:00
CodeGenIntrinsics.h
CodeGenRegisters.h
CodeGenTarget.cpp move target-independent opcodes out of TargetInstrInfo 2010-02-09 19:54:29 +00:00
CodeGenTarget.h
DAGISelEmitter.cpp change the scope node to include a list of children to be checked 2010-02-25 19:00:39 +00:00
DAGISelEmitter.h
DAGISelMatcher.cpp Teach the grouper some simple tricks about looking contradictory 2010-02-27 07:49:13 +00:00
DAGISelMatcher.h Teach the grouper some simple tricks about looking contradictory 2010-02-27 07:49:13 +00:00
DAGISelMatcherEmitter.cpp add some helpful comments to the emitter 2010-02-26 08:15:02 +00:00
DAGISelMatcherGen.cpp rename fooMatcherNode to fooMatcher. 2010-02-25 02:04:40 +00:00
DAGISelMatcherOpt.cpp Teach the grouper some simple tricks about looking contradictory 2010-02-27 07:49:13 +00:00
DisassemblerEmitter.cpp
DisassemblerEmitter.h
EDEmitter.cpp Updated the enhanced disassembly library's TableGen 2010-02-10 03:23:23 +00:00
EDEmitter.h
FastISelEmitter.cpp
FastISelEmitter.h
InstrEnumEmitter.cpp fix this to work more determinstically, patch by Thomas Veith! 2010-02-19 07:02:20 +00:00
InstrEnumEmitter.h
InstrInfoEmitter.cpp Introduce a new CodeGenInstruction::ConstraintInfo class 2010-02-10 01:45:28 +00:00
InstrInfoEmitter.h
IntrinsicEmitter.cpp
IntrinsicEmitter.h
LLVMCConfigurationEmitter.cpp Trailing whitespace. 2010-02-23 09:05:01 +00:00
LLVMCConfigurationEmitter.h
Makefile
OptParserEmitter.cpp
OptParserEmitter.h
Record.cpp
Record.h
RegisterInfoEmitter.cpp
RegisterInfoEmitter.h
StringToOffsetTable.h
SubtargetEmitter.cpp
SubtargetEmitter.h
TableGen.cpp
TableGenBackend.cpp
TableGenBackend.h
TGLexer.cpp
TGLexer.h
TGParser.cpp
TGParser.h
TGValueTypes.cpp
X86DisassemblerShared.h
X86DisassemblerTables.cpp
X86DisassemblerTables.h
X86ModRMFilters.h
X86RecognizableInstr.cpp Changed the table generator so that the X86 2010-02-24 02:56:25 +00:00
X86RecognizableInstr.h