Changeset View
Changeset View
Standalone View
Standalone View
llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td
Show First 20 Lines • Show All 321 Lines • ▼ Show 20 Lines | let AdditionalPredicates = [NotInMicroMips] in { | ||||
def DEXT : ExtBase<"dext", GPR64Opnd, uimm5_report_uimm6, uimm5_plus1, | def DEXT : ExtBase<"dext", GPR64Opnd, uimm5_report_uimm6, uimm5_plus1, | ||||
immZExt5, immZExt5Plus1, MipsExt>, EXT_FM<3>, | immZExt5, immZExt5Plus1, MipsExt>, EXT_FM<3>, | ||||
ISA_MIPS64R2; | ISA_MIPS64R2; | ||||
def DEXTM : ExtBase<"dextm", GPR64Opnd, uimm5, uimm5_plus33, immZExt5, | def DEXTM : ExtBase<"dextm", GPR64Opnd, uimm5, uimm5_plus33, immZExt5, | ||||
immZExt5Plus33, MipsExt>, EXT_FM<1>, ISA_MIPS64R2; | immZExt5Plus33, MipsExt>, EXT_FM<1>, ISA_MIPS64R2; | ||||
def DEXTU : ExtBase<"dextu", GPR64Opnd, uimm5_plus32, uimm5_plus1, | def DEXTU : ExtBase<"dextu", GPR64Opnd, uimm5_plus32, uimm5_plus1, | ||||
immZExt5Plus32, immZExt5Plus1, MipsExt>, EXT_FM<2>, | immZExt5Plus32, immZExt5Plus1, MipsExt>, EXT_FM<2>, | ||||
ISA_MIPS64R2; | ISA_MIPS64R2; | ||||
def DINS : InsBase<"dins", GPR64Opnd, uimm6, uimm5_inssize_plus1, MipsIns>, | def DINS : InsBase<"dins", GPR64Opnd, uimm6, uimm5_inssize_plus1, immZExt5, | ||||
EXT_FM<7>, ISA_MIPS64R2; | immZExt5Plus1, MipsIns>, EXT_FM<7>, ISA_MIPS64R2; | ||||
def DINSU : InsBase<"dinsu", GPR64Opnd, uimm5_plus32, uimm5_inssize_plus1>, | def DINSU : InsBase<"dinsu", GPR64Opnd, uimm5_plus32, uimm5_inssize_plus1, | ||||
immZExt5Plus32, immZExt5Plus1, MipsIns>, | |||||
EXT_FM<6>, ISA_MIPS64R2; | EXT_FM<6>, ISA_MIPS64R2; | ||||
def DINSM : InsBase<"dinsm", GPR64Opnd, uimm5, uimm_range_2_64>, | def DINSM : InsBase<"dinsm", GPR64Opnd, uimm5, uimm_range_2_64, | ||||
immZExt5, immZExtRange2To64, MipsIns>, | |||||
EXT_FM<5>, ISA_MIPS64R2; | EXT_FM<5>, ISA_MIPS64R2; | ||||
} | } | ||||
let isCodeGenOnly = 1, AdditionalPredicates = [NotInMicroMips] in { | let isCodeGenOnly = 1, AdditionalPredicates = [NotInMicroMips] in { | ||||
def DEXT64_32 : InstSE<(outs GPR64Opnd:$rt), | def DEXT64_32 : InstSE<(outs GPR64Opnd:$rt), | ||||
(ins GPR32Opnd:$rs, uimm5_report_uimm6:$pos, | (ins GPR32Opnd:$rs, uimm5_report_uimm6:$pos, | ||||
uimm5_plus1:$size), | uimm5_plus1:$size), | ||||
"dext $rt, $rs, $pos, $size", [], II_EXT, FrmR, "dext">, | "dext $rt, $rs, $pos, $size", [], II_EXT, FrmR, "dext">, | ||||
▲ Show 20 Lines • Show All 621 Lines • Show Last 20 Lines |