mirror of
https://github.com/RPCSX/llvm.git
synced 2025-04-12 13:03:14 +00:00
ARM vpush/vpop assembler mnemonics accept an optional size suffix.
rdar://10988114 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152068 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7cc0426489
commit
bc978a60d9
@ -206,6 +206,14 @@ def : InstAlias<"vpop${p} $r", (VLDMDIA_UPD SP, pred:$p, dpr_reglist:$r)>,
|
|||||||
Requires<[HasVFP2]>;
|
Requires<[HasVFP2]>;
|
||||||
def : InstAlias<"vpop${p} $r", (VLDMSIA_UPD SP, pred:$p, spr_reglist:$r)>,
|
def : InstAlias<"vpop${p} $r", (VLDMSIA_UPD SP, pred:$p, spr_reglist:$r)>,
|
||||||
Requires<[HasVFP2]>;
|
Requires<[HasVFP2]>;
|
||||||
|
defm : VFPDTAnyInstAlias<"vpush${p}", "$r",
|
||||||
|
(VSTMSDB_UPD SP, pred:$p, spr_reglist:$r)>;
|
||||||
|
defm : VFPDTAnyInstAlias<"vpush${p}", "$r",
|
||||||
|
(VSTMDDB_UPD SP, pred:$p, dpr_reglist:$r)>;
|
||||||
|
defm : VFPDTAnyInstAlias<"vpop${p}", "$r",
|
||||||
|
(VLDMSIA_UPD SP, pred:$p, spr_reglist:$r)>;
|
||||||
|
defm : VFPDTAnyInstAlias<"vpop${p}", "$r",
|
||||||
|
(VLDMDIA_UPD SP, pred:$p, dpr_reglist:$r)>;
|
||||||
|
|
||||||
// FLDMX, FSTMX - mixing S/D registers for pre-armv6 cores
|
// FLDMX, FSTMX - mixing S/D registers for pre-armv6 cores
|
||||||
|
|
||||||
|
@ -7,6 +7,21 @@ foo:
|
|||||||
vpush {s8, s9, s10, s11, s12}
|
vpush {s8, s9, s10, s11, s12}
|
||||||
vpop {d8, d9, d10, d11, d12}
|
vpop {d8, d9, d10, d11, d12}
|
||||||
vpop {s8, s9, s10, s11, s12}
|
vpop {s8, s9, s10, s11, s12}
|
||||||
|
@ optional size suffix
|
||||||
|
vpush.s8 {d8, d9, d10, d11, d12}
|
||||||
|
vpush.16 {s8, s9, s10, s11, s12}
|
||||||
|
vpop.f32 {d8, d9, d10, d11, d12}
|
||||||
|
vpop.64 {s8, s9, s10, s11, s12}
|
||||||
|
|
||||||
|
@ CHECK-THUMB: vpush {d8, d9, d10, d11, d12} @ encoding: [0x2d,0xed,0x0a,0x8b]
|
||||||
|
@ CHECK-THUMB: vpush {s8, s9, s10, s11, s12} @ encoding: [0x2d,0xed,0x05,0x4a]
|
||||||
|
@ CHECK-THUMB: vpop {d8, d9, d10, d11, d12} @ encoding: [0xbd,0xec,0x0a,0x8b]
|
||||||
|
@ CHECK-THUMB: vpop {s8, s9, s10, s11, s12} @ encoding: [0xbd,0xec,0x05,0x4a]
|
||||||
|
|
||||||
|
@ CHECK-ARM: vpush {d8, d9, d10, d11, d12} @ encoding: [0x0a,0x8b,0x2d,0xed]
|
||||||
|
@ CHECK-ARM: vpush {s8, s9, s10, s11, s12} @ encoding: [0x05,0x4a,0x2d,0xed]
|
||||||
|
@ CHECK-ARM: vpop {d8, d9, d10, d11, d12} @ encoding: [0x0a,0x8b,0xbd,0xec]
|
||||||
|
@ CHECK-ARM: vpop {s8, s9, s10, s11, s12} @ encoding: [0x05,0x4a,0xbd,0xec]
|
||||||
|
|
||||||
@ CHECK-THUMB: vpush {d8, d9, d10, d11, d12} @ encoding: [0x2d,0xed,0x0a,0x8b]
|
@ CHECK-THUMB: vpush {d8, d9, d10, d11, d12} @ encoding: [0x2d,0xed,0x0a,0x8b]
|
||||||
@ CHECK-THUMB: vpush {s8, s9, s10, s11, s12} @ encoding: [0x2d,0xed,0x05,0x4a]
|
@ CHECK-THUMB: vpush {s8, s9, s10, s11, s12} @ encoding: [0x2d,0xed,0x05,0x4a]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user