From: Jim Grosbach Date: Thu, 15 Sep 2011 18:13:30 +0000 (+0000) Subject: Thumb2 assembly parsing and encoding for REV. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=1b69a128d6b98456c666b4031cc46c3d0fbe6177;p=oota-llvm.git Thumb2 assembly parsing and encoding for REV. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139813 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/ARM/ARMInstrThumb2.td b/lib/Target/ARM/ARMInstrThumb2.td index fbc95ee96c6..9467f36f984 100644 --- a/lib/Target/ARM/ARMInstrThumb2.td +++ b/lib/Target/ARM/ARMInstrThumb2.td @@ -3841,3 +3841,5 @@ def : t2InstAlias<"push${p} $regs", (t2STMDB_UPD SP, pred:$p, reglist:$regs)>; def : t2InstAlias<"pop${p}.w $regs", (t2LDMIA_UPD SP, pred:$p, reglist:$regs)>; def : t2InstAlias<"pop${p} $regs", (t2LDMIA_UPD SP, pred:$p, reglist:$regs)>; +// Alias for REV without the ".w" optional width specifier. +def : t2InstAlias<"rev${p} $Rd, $Rm", (t2REV rGPR:$Rd, rGPR:$Rm, pred:$p)>; diff --git a/test/MC/ARM/basic-thumb2-instructions.s b/test/MC/ARM/basic-thumb2-instructions.s index 9facc0ca605..9723407bbb0 100644 --- a/test/MC/ARM/basic-thumb2-instructions.s +++ b/test/MC/ARM/basic-thumb2-instructions.s @@ -1425,6 +1425,22 @@ _func: @ CHECK: rbitne r1, r2 @ encoding: [0x92,0xfa,0xa2,0xf1] +@------------------------------------------------------------------------------ +@ REV +@------------------------------------------------------------------------------ + rev.w r1, r2 + rev r2, r8 + itt ne + revne r1, r2 + revne r1, r8 + +@ CHECK: rev.w r1, r2 @ encoding: [0x92,0xfa,0x82,0xf1] +@ CHECK: rev.w r2, r8 @ encoding: [0x98,0xfa,0x88,0xf2] +@ CHECK: itt ne @ encoding: [0x1c,0xbf] +@ CHECK: revne r1, r2 @ encoding: [0x11,0xba] +@ CHECK: revne.w r1, r8 @ encoding: [0x98,0xfa,0x88,0xf1] + + @------------------------------------------------------------------------------ @ SUB (register) @------------------------------------------------------------------------------