Thumb2 assembly parsing and encoding for REV16/REVSH.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139828 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jim Grosbach 2011-09-15 19:46:13 +00:00
parent 8f29e6969e
commit 689b86ed2e
2 changed files with 35 additions and 1 deletions

View File

@ -3841,5 +3841,7 @@ 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.
// Alias for REV/REV16/REVSH without the ".w" optional width specifier.
def : t2InstAlias<"rev${p} $Rd, $Rm", (t2REV rGPR:$Rd, rGPR:$Rm, pred:$p)>;
def : t2InstAlias<"rev16${p} $Rd, $Rm", (t2REV16 rGPR:$Rd, rGPR:$Rm, pred:$p)>;
def : t2InstAlias<"revsh${p} $Rd, $Rm", (t2REVSH rGPR:$Rd, rGPR:$Rm, pred:$p)>;

View File

@ -1441,6 +1441,38 @@ _func:
@ CHECK: revne.w r1, r8 @ encoding: [0x98,0xfa,0x88,0xf1]
@------------------------------------------------------------------------------
@ REV16
@------------------------------------------------------------------------------
rev16.w r1, r2
rev16 r2, r8
itt ne
rev16ne r1, r2
rev16ne r1, r8
rev16.w r1, r2 @ encoding: [0x92,0xfa,0x92,0xf1]
rev16.w r2, r8 @ encoding: [0x98,0xfa,0x98,0xf2]
itt ne @ encoding: [0x1c,0xbf]
rev16ne r1, r2 @ encoding: [0x51,0xba]
rev16ne.w r1, r8 @ encoding: [0x98,0xfa,0x98,0xf1]
@------------------------------------------------------------------------------
@ REVSH
@------------------------------------------------------------------------------
revsh.w r1, r2
revsh r2, r8
itt ne
revshne r1, r2
revshne r1, r8
revsh.w r1, r2 @ encoding: [0x92,0xfa,0xb2,0xf1]
revsh.w r2, r8 @ encoding: [0x98,0xfa,0xb8,0xf2]
itt ne @ encoding: [0x1c,0xbf]
revshne r1, r2 @ encoding: [0xd1,0xba]
revshne.w r1, r8 @ encoding: [0x98,0xfa,0xb8,0xf1]
@------------------------------------------------------------------------------
@ SUB (register)
@------------------------------------------------------------------------------