X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FTarget%2FTarget.td;h=cebac7a263650b8b01f7ea5043b73025fe7a3c74;hb=e6be34a53ecbe8c2ff9f0793b13d847e94c0de91;hp=d155e713c0db95987971c2f00d0c26b48ccaf419;hpb=ba7e756c22446a17a72632b8d4ac66cbdaab33f7;p=oota-llvm.git diff --git a/lib/Target/Target.td b/lib/Target/Target.td index d155e713c0d..cebac7a2636 100644 --- a/lib/Target/Target.td +++ b/lib/Target/Target.td @@ -25,6 +25,7 @@ class RegisterClass; // Forward def // in the target machine. String n will become the "name" of the register. class Register { string Namespace = ""; + string AsmName = n; string Name = n; // SpillSize - If this value is set to a non-zero value, it is the size in @@ -277,6 +278,9 @@ def i16imm : Operand; def i32imm : Operand; def i64imm : Operand; +def f32imm : Operand; +def f64imm : Operand; + /// zero_reg definition - Special node to stand for the zero register. /// def zero_reg; @@ -334,13 +338,20 @@ def INLINEASM : Instruction { } def LABEL : Instruction { let OutOperandList = (ops); - let InOperandList = (ops i32imm:$id); + let InOperandList = (ops i32imm:$id, i32imm:$flavor); + let AsmString = ""; + let Namespace = "TargetInstrInfo"; + let hasCtrlDep = 1; +} +def DECLARE : Instruction { + let OutOperandList = (ops); + let InOperandList = (ops variable_ops); let AsmString = ""; let Namespace = "TargetInstrInfo"; let hasCtrlDep = 1; } def EXTRACT_SUBREG : Instruction { - let OutOperandList = (ops variable_ops); + let OutOperandList = (ops variable_ops); let InOperandList = (ops variable_ops); let AsmString = ""; let Namespace = "TargetInstrInfo";