mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Thumb2 assembly parsing and encoding for STR(immediate).
Add aliases for STRB/STRH while there. Tests forthcoming for those. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139942 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
36343d85cd
commit
642caea2c6
@ -3864,3 +3864,19 @@ def : t2InstAlias<"usat${p} $Rd, $sat_imm, $Rn",
|
||||
// STM w/o the .w suffix.
|
||||
def : t2InstAlias<"stm${p} $Rn, $regs",
|
||||
(t2STMIA GPR:$Rn, pred:$p, reglist:$regs)>;
|
||||
|
||||
// Alias for STR, STRB, and STRH without the ".w" optional
|
||||
// width specifier.
|
||||
def : t2InstAlias<"str${p} $Rt, $addr",
|
||||
(t2STRi12 GPR:$Rt, t2addrmode_imm12:$addr, pred:$p)>;
|
||||
def : t2InstAlias<"strb${p} $Rt, $addr",
|
||||
(t2STRBi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)>;
|
||||
def : t2InstAlias<"strh${p} $Rt, $addr",
|
||||
(t2STRHi12 rGPR:$Rt, t2addrmode_imm12:$addr, pred:$p)>;
|
||||
|
||||
def : t2InstAlias<"str${p} $Rt, $addr",
|
||||
(t2STRs GPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)>;
|
||||
def : t2InstAlias<"strb${p} $Rt, $addr",
|
||||
(t2STRBs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)>;
|
||||
def : t2InstAlias<"strh${p} $Rt, $addr",
|
||||
(t2STRHs rGPR:$Rt, t2addrmode_so_reg:$addr, pred:$p)>;
|
||||
|
@ -2160,6 +2160,22 @@ _func:
|
||||
@ CHECK: stm.w r5!, {r3, r8} @ encoding: [0xa5,0xe8,0x08,0x01]
|
||||
|
||||
|
||||
@------------------------------------------------------------------------------
|
||||
@ STR(immediate)
|
||||
@------------------------------------------------------------------------------
|
||||
str r5, [r5, #-4]
|
||||
str r5, [r6, #32]
|
||||
str r5, [r6, #33]
|
||||
str r5, [r6, #257]
|
||||
str.w pc, [r7, #257]
|
||||
|
||||
@ CHECK: str r5, [r5, #-4] @ encoding: [0x45,0xf8,0x04,0x5c]
|
||||
@ CHECK: str r5, [r6, #32] @ encoding: [0x35,0x62]
|
||||
@ CHECK: str.w r5, [r6, #33] @ encoding: [0xc6,0xf8,0x21,0x50]
|
||||
@ CHECK: str.w r5, [r6, #257] @ encoding: [0xc6,0xf8,0x01,0x51]
|
||||
@ CHECK: str.w pc, [r7, #257] @ encoding: [0xc7,0xf8,0x01,0xf1]
|
||||
|
||||
|
||||
@------------------------------------------------------------------------------
|
||||
@ SUB (register)
|
||||
@------------------------------------------------------------------------------
|
||||
|
Loading…
Reference in New Issue
Block a user