forked from OSchip/llvm-project
ARM: Add instruction aliases for the Thumb2 PLD/PLDW (literal) alternate form.
See A8.8.127 in ARM DDI 0406C.b. Related to <rdar://problem/14403733>. llvm-svn: 186682
This commit is contained in:
parent
ff6c5a5609
commit
34869503cb
|
@ -4428,7 +4428,12 @@ def : t2InstAlias<"ldrsh${p}.w $Rt, $addr",
|
|||
def : t2InstAlias<"add${p} $Rd, pc, $imm",
|
||||
(t2ADR rGPR:$Rd, imm0_4095:$imm, pred:$p)>;
|
||||
|
||||
// PLI with alternate literal form.
|
||||
// PLD/PLDW/PLI with alternate literal form.
|
||||
def : t2InstAlias<"pld${p} $addr",
|
||||
(t2PLDpci t2ldr_pcrel_imm12:$addr, pred:$p)>;
|
||||
def : InstAlias<"pldw${p} $addr",
|
||||
(t2PLDWpci t2ldr_pcrel_imm12:$addr, pred:$p)>,
|
||||
Requires<[IsThumb2,HasV7,HasMP]>;
|
||||
def : InstAlias<"pli${p} $addr",
|
||||
(t2PLIpci t2ldr_pcrel_imm12:$addr, pred:$p)>,
|
||||
Requires<[IsThumb2,HasV7]>;
|
||||
|
|
|
@ -1573,6 +1573,9 @@ _func:
|
|||
@ FIXME: pld _foo @ encoding: [0x9f'A',0xf8'A',A,0xf0'A']
|
||||
@ fixup A - offset: 0, value: _foo, kind: fixup_t2_ldst_pcrel_12
|
||||
|
||||
pld [pc,#-4095]
|
||||
@ CHECK: pld [pc, #-4095] @ encoding: [0x1f,0xf8,0xff,0xff]
|
||||
|
||||
|
||||
@------------------------------------------------------------------------------
|
||||
@ PLD(register)
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
@ RUN: llvm-mc -triple=thumbv7-apple-darwin -mcpu=cortex-a8 -mattr=+mp -show-encoding < %s | FileCheck %s
|
||||
|
||||
@------------------------------------------------------------------------------
|
||||
@ PLD(literal)
|
||||
@------------------------------------------------------------------------------
|
||||
pldw [pc,#-4095]
|
||||
@ CHECK: pldw [pc, #-4095] @ encoding: [0x3f,0xf8,0xff,0xff]
|
Loading…
Reference in New Issue