Allow instructions to have a DAG pattern associated with them.

Define a few preliminary node types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7579 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-08-04 21:07:37 +00:00
parent 6770aedf7f
commit 244883e4af

View File

@ -103,6 +103,10 @@ class Instruction {
bit isCall = 0; // Is this instruction a call instruction?
bit isTwoAddress = 0; // Is this a two address instruction?
bit isTerminator = 0; // Is this part of the terminator for a basic block?
// Pattern - Set to the DAG pattern for this instruction, if we know of one,
// otherwise, uninitialized.
dag Pattern;
}
// InstrInfo - This class should only be instantiated once to provide parameters
@ -135,3 +139,19 @@ class Target {
// InstructionSet - Instruction set description for this target
InstrInfo InstructionSet;
}
//===----------------------------------------------------------------------===//
// DAG node definitions used by the instruction selector...
//
def set; // FIXME: these are subject to substantial change
def plus;
def minus;
def mult;
def div;
def udiv;
def mod;
def umod;
def imm8;
def imm16;
def imm32;