mirror of
https://github.com/RPCSX/llvm.git
synced 2025-01-31 09:22:31 +00:00
Make ARMAsmParser accept the correct alignment specifier syntax in instructions.
The parser will now accept instructions with alignment specifiers written like vld1.8 {d16}, [r0:64] , while also still accepting the incorrect syntax vld1.8 {d16}, [r0, :64] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175164 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b181919d86
commit
b1d081230e
@ -4237,9 +4237,10 @@ parseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
if (BaseRegNum == -1)
|
||||
return Error(BaseRegTok.getLoc(), "register expected");
|
||||
|
||||
// The next token must either be a comma or a closing bracket.
|
||||
// The next token must either be a comma, a colon or a closing bracket.
|
||||
const AsmToken &Tok = Parser.getTok();
|
||||
if (!Tok.is(AsmToken::Comma) && !Tok.is(AsmToken::RBrac))
|
||||
if (!Tok.is(AsmToken::Colon) && !Tok.is(AsmToken::Comma) &&
|
||||
!Tok.is(AsmToken::RBrac))
|
||||
return Error(Tok.getLoc(), "malformed memory operand");
|
||||
|
||||
if (Tok.is(AsmToken::RBrac)) {
|
||||
@ -4259,8 +4260,11 @@ parseMemory(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
|
||||
return false;
|
||||
}
|
||||
|
||||
assert(Tok.is(AsmToken::Comma) && "Lost comma in memory operand?!");
|
||||
Parser.Lex(); // Eat the comma.
|
||||
assert((Tok.is(AsmToken::Colon) || Tok.is(AsmToken::Comma)) &&
|
||||
"Lost colon or comma in memory operand?!");
|
||||
if (Tok.is(AsmToken::Comma)) {
|
||||
Parser.Lex(); // Eat the comma.
|
||||
}
|
||||
|
||||
// If we have a ':', it's an alignment specifier.
|
||||
if (Parser.getTok().is(AsmToken::Colon)) {
|
||||
|
@ -30,7 +30,7 @@ entry:
|
||||
|
||||
define hidden void @conv4_8_E() nounwind {
|
||||
entry:
|
||||
%asmtmp31 = call %0 asm "vld1.u8 {$0}, [$1, :128]!\0A", "=w,=r,1"(<16 x i8>* undef) nounwind
|
||||
%asmtmp31 = call %0 asm "vld1.u8 {$0}, [$1:128]!\0A", "=w,=r,1"(<16 x i8>* undef) nounwind
|
||||
unreachable
|
||||
}
|
||||
|
||||
|
@ -1,59 +1,59 @@
|
||||
@ RUN: llvm-mc -mcpu=cortex-a8 -triple armv7-apple-darwin -show-encoding < %s | FileCheck %s
|
||||
|
||||
vld1.8 {d16}, [r0, :64]
|
||||
vld1.8 {d16}, [r0:64]
|
||||
vld1.16 {d16}, [r0]
|
||||
vld1.32 {d16}, [r0]
|
||||
vld1.64 {d16}, [r0]
|
||||
vld1.8 {d16, d17}, [r0, :64]
|
||||
vld1.16 {d16, d17}, [r0, :128]
|
||||
vld1.8 {d16, d17}, [r0:64]
|
||||
vld1.16 {d16, d17}, [r0:128]
|
||||
vld1.32 {d16, d17}, [r0]
|
||||
vld1.64 {d16, d17}, [r0]
|
||||
vld1.8 {d1, d2, d3}, [r3]
|
||||
vld1.16 {d4, d5, d6}, [r3, :64]
|
||||
vld1.16 {d4, d5, d6}, [r3:64]
|
||||
vld1.32 {d5, d6, d7}, [r3]
|
||||
vld1.64 {d6, d7, d8}, [r3, :64]
|
||||
vld1.64 {d6, d7, d8}, [r3:64]
|
||||
vld1.8 {d1, d2, d3, d4}, [r3]
|
||||
vld1.16 {d4, d5, d6, d7}, [r3, :64]
|
||||
vld1.16 {d4, d5, d6, d7}, [r3:64]
|
||||
vld1.32 {d5, d6, d7, d8}, [r3]
|
||||
vld1.64 {d6, d7, d8, d9}, [r3, :64]
|
||||
vld1.64 {d6, d7, d8, d9}, [r3:64]
|
||||
|
||||
vld1.8 {d16}, [r0, :64]!
|
||||
vld1.8 {d16}, [r0:64]!
|
||||
vld1.16 {d16}, [r0]!
|
||||
vld1.32 {d16}, [r0]!
|
||||
vld1.64 {d16}, [r0]!
|
||||
vld1.8 {d16, d17}, [r0, :64]!
|
||||
vld1.16 {d16, d17}, [r0, :128]!
|
||||
vld1.8 {d16, d17}, [r0:64]!
|
||||
vld1.16 {d16, d17}, [r0:128]!
|
||||
vld1.32 {d16, d17}, [r0]!
|
||||
vld1.64 {d16, d17}, [r0]!
|
||||
|
||||
vld1.8 {d16}, [r0, :64], r5
|
||||
vld1.8 {d16}, [r0:64], r5
|
||||
vld1.16 {d16}, [r0], r5
|
||||
vld1.32 {d16}, [r0], r5
|
||||
vld1.64 {d16}, [r0], r5
|
||||
vld1.8 {d16, d17}, [r0, :64], r5
|
||||
vld1.16 {d16, d17}, [r0, :128], r5
|
||||
vld1.8 {d16, d17}, [r0:64], r5
|
||||
vld1.16 {d16, d17}, [r0:128], r5
|
||||
vld1.32 {d16, d17}, [r0], r5
|
||||
vld1.64 {d16, d17}, [r0], r5
|
||||
|
||||
vld1.8 {d1, d2, d3}, [r3]!
|
||||
vld1.16 {d4, d5, d6}, [r3, :64]!
|
||||
vld1.16 {d4, d5, d6}, [r3:64]!
|
||||
vld1.32 {d5, d6, d7}, [r3]!
|
||||
vld1.64 {d6, d7, d8}, [r3, :64]!
|
||||
vld1.64 {d6, d7, d8}, [r3:64]!
|
||||
|
||||
vld1.8 {d1, d2, d3}, [r3], r6
|
||||
vld1.16 {d4, d5, d6}, [r3, :64], r6
|
||||
vld1.16 {d4, d5, d6}, [r3:64], r6
|
||||
vld1.32 {d5, d6, d7}, [r3], r6
|
||||
vld1.64 {d6, d7, d8}, [r3, :64], r6
|
||||
vld1.64 {d6, d7, d8}, [r3:64], r6
|
||||
|
||||
vld1.8 {d1, d2, d3, d4}, [r3]!
|
||||
vld1.16 {d4, d5, d6, d7}, [r3, :64]!
|
||||
vld1.16 {d4, d5, d6, d7}, [r3:64]!
|
||||
vld1.32 {d5, d6, d7, d8}, [r3]!
|
||||
vld1.64 {d6, d7, d8, d9}, [r3, :64]!
|
||||
vld1.64 {d6, d7, d8, d9}, [r3:64]!
|
||||
|
||||
vld1.8 {d1, d2, d3, d4}, [r3], r8
|
||||
vld1.16 {d4, d5, d6, d7}, [r3, :64], r8
|
||||
vld1.16 {d4, d5, d6, d7}, [r3:64], r8
|
||||
vld1.32 {d5, d6, d7, d8}, [r3], r8
|
||||
vld1.64 {d6, d7, d8, d9}, [r3, :64], r8
|
||||
vld1.64 {d6, d7, d8, d9}, [r3:64], r8
|
||||
|
||||
@ CHECK: vld1.8 {d16}, [r0, :64] @ encoding: [0x1f,0x07,0x60,0xf4]
|
||||
@ CHECK: vld1.16 {d16}, [r0] @ encoding: [0x4f,0x07,0x60,0xf4]
|
||||
@ -111,26 +111,26 @@
|
||||
@ CHECK: vld1.64 {d6, d7, d8, d9}, [r3, :64], r8 @ encoding: [0xd8,0x62,0x23,0xf4]
|
||||
|
||||
|
||||
vld2.8 {d16, d17}, [r0, :64]
|
||||
vld2.16 {d16, d17}, [r0, :128]
|
||||
vld2.8 {d16, d17}, [r0:64]
|
||||
vld2.16 {d16, d17}, [r0:128]
|
||||
vld2.32 {d16, d17}, [r0]
|
||||
vld2.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vld2.16 {d16, d17, d18, d19}, [r0, :128]
|
||||
vld2.32 {d16, d17, d18, d19}, [r0, :256]
|
||||
vld2.8 {d16, d17, d18, d19}, [r0:64]
|
||||
vld2.16 {d16, d17, d18, d19}, [r0:128]
|
||||
vld2.32 {d16, d17, d18, d19}, [r0:256]
|
||||
|
||||
vld2.8 {d19, d20}, [r0, :64]!
|
||||
vld2.16 {d16, d17}, [r0, :128]!
|
||||
vld2.8 {d19, d20}, [r0:64]!
|
||||
vld2.16 {d16, d17}, [r0:128]!
|
||||
vld2.32 {q10}, [r0]!
|
||||
vld2.8 {d4-d7}, [r0, :64]!
|
||||
vld2.16 {d1, d2, d3, d4}, [r0, :128]!
|
||||
vld2.32 {q7, q8}, [r0, :256]!
|
||||
vld2.8 {d4-d7}, [r0:64]!
|
||||
vld2.16 {d1, d2, d3, d4}, [r0:128]!
|
||||
vld2.32 {q7, q8}, [r0:256]!
|
||||
|
||||
vld2.8 {d19, d20}, [r0, :64], r6
|
||||
vld2.16 {d16, d17}, [r0, :128], r6
|
||||
vld2.8 {d19, d20}, [r0:64], r6
|
||||
vld2.16 {d16, d17}, [r0:128], r6
|
||||
vld2.32 {q10}, [r0], r6
|
||||
vld2.8 {d4-d7}, [r0, :64], r6
|
||||
vld2.16 {d1, d2, d3, d4}, [r0, :128], r6
|
||||
vld2.32 {q7, q8}, [r0, :256], r6
|
||||
vld2.8 {d4-d7}, [r0:64], r6
|
||||
vld2.16 {d1, d2, d3, d4}, [r0:128], r6
|
||||
vld2.32 {q7, q8}, [r0:256], r6
|
||||
|
||||
@ CHECK: vld2.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x08,0x60,0xf4]
|
||||
@ CHECK: vld2.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x08,0x60,0xf4]
|
||||
@ -157,7 +157,7 @@
|
||||
vld3.8 {d16, d17, d18}, [r1]
|
||||
vld3.16 {d6, d7, d8}, [r2]
|
||||
vld3.32 {d1, d2, d3}, [r3]
|
||||
vld3.8 {d16, d18, d20}, [r0, :64]
|
||||
vld3.8 {d16, d18, d20}, [r0:64]
|
||||
vld3.u16 {d27, d29, d31}, [r4]
|
||||
vld3.i32 {d6, d8, d10}, [r5]
|
||||
|
||||
@ -171,7 +171,7 @@
|
||||
vld3.p8 {d6, d7, d8}, [r8]!
|
||||
vld3.16 {d9, d10, d11}, [r7]!
|
||||
vld3.f32 {d1, d2, d3}, [r6]!
|
||||
vld3.8 {d16, d18, d20}, [r0, :64]!
|
||||
vld3.8 {d16, d18, d20}, [r0:64]!
|
||||
vld3.p16 {d20, d22, d24}, [r5]!
|
||||
vld3.32 {d5, d7, d9}, [r4]!
|
||||
|
||||
@ -196,24 +196,24 @@
|
||||
@ CHECK: vld3.32 {d5, d7, d9}, [r4]! @ encoding: [0x8d,0x55,0x24,0xf4]
|
||||
|
||||
|
||||
vld4.8 {d16, d17, d18, d19}, [r1, :64]
|
||||
vld4.16 {d16, d17, d18, d19}, [r2, :128]
|
||||
vld4.32 {d16, d17, d18, d19}, [r3, :256]
|
||||
vld4.8 {d17, d19, d21, d23}, [r5, :256]
|
||||
vld4.8 {d16, d17, d18, d19}, [r1:64]
|
||||
vld4.16 {d16, d17, d18, d19}, [r2:128]
|
||||
vld4.32 {d16, d17, d18, d19}, [r3:256]
|
||||
vld4.8 {d17, d19, d21, d23}, [r5:256]
|
||||
vld4.16 {d17, d19, d21, d23}, [r7]
|
||||
vld4.32 {d16, d18, d20, d22}, [r8]
|
||||
|
||||
vld4.s8 {d16, d17, d18, d19}, [r1, :64]!
|
||||
vld4.s16 {d16, d17, d18, d19}, [r2, :128]!
|
||||
vld4.s32 {d16, d17, d18, d19}, [r3, :256]!
|
||||
vld4.u8 {d17, d19, d21, d23}, [r5, :256]!
|
||||
vld4.s8 {d16, d17, d18, d19}, [r1:64]!
|
||||
vld4.s16 {d16, d17, d18, d19}, [r2:128]!
|
||||
vld4.s32 {d16, d17, d18, d19}, [r3:256]!
|
||||
vld4.u8 {d17, d19, d21, d23}, [r5:256]!
|
||||
vld4.u16 {d17, d19, d21, d23}, [r7]!
|
||||
vld4.u32 {d16, d18, d20, d22}, [r8]!
|
||||
|
||||
vld4.p8 {d16, d17, d18, d19}, [r1, :64], r8
|
||||
vld4.p8 {d16, d17, d18, d19}, [r1:64], r8
|
||||
vld4.p16 {d16, d17, d18, d19}, [r2], r7
|
||||
vld4.f32 {d16, d17, d18, d19}, [r3, :64], r5
|
||||
vld4.i8 {d16, d18, d20, d22}, [r4, :256], r2
|
||||
vld4.f32 {d16, d17, d18, d19}, [r3:64], r5
|
||||
vld4.i8 {d16, d18, d20, d22}, [r4:256], r2
|
||||
vld4.i16 {d16, d18, d20, d22}, [r6], r3
|
||||
vld4.i32 {d17, d19, d21, d23}, [r9], r4
|
||||
|
||||
@ -252,8 +252,8 @@
|
||||
@ CHECK: vld1.8 {d4[], d5[]}, [r1], r3 @ encoding: [0x23,0x4c,0xa1,0xf4]
|
||||
|
||||
vld1.8 {d16[3]}, [r0]
|
||||
vld1.16 {d16[2]}, [r0, :16]
|
||||
vld1.32 {d16[1]}, [r0, :32]
|
||||
vld1.16 {d16[2]}, [r0:16]
|
||||
vld1.32 {d16[1]}, [r0:32]
|
||||
vld1.p8 d12[6], [r2]!
|
||||
vld1.i8 d12[6], [r2], r2
|
||||
vld1.u16 d12[3], [r2]!
|
||||
@ -268,12 +268,12 @@
|
||||
@ CHECK: vld1.16 {d12[2]}, [r2], r2 @ encoding: [0x82,0xc4,0xa2,0xf4]
|
||||
|
||||
|
||||
vld2.8 {d16[1], d17[1]}, [r0, :16]
|
||||
vld2.16 {d16[1], d17[1]}, [r0, :32]
|
||||
vld2.8 {d16[1], d17[1]}, [r0:16]
|
||||
vld2.16 {d16[1], d17[1]}, [r0:32]
|
||||
vld2.32 {d16[1], d17[1]}, [r0]
|
||||
vld2.16 {d17[1], d19[1]}, [r0]
|
||||
vld2.32 {d17[0], d19[0]}, [r0, :64]
|
||||
vld2.32 {d17[0], d19[0]}, [r0, :64]!
|
||||
vld2.32 {d17[0], d19[0]}, [r0:64]
|
||||
vld2.32 {d17[0], d19[0]}, [r0:64]!
|
||||
vld2.8 {d2[4], d3[4]}, [r2], r3
|
||||
vld2.8 {d2[4], d3[4]}, [r2]!
|
||||
vld2.8 {d2[4], d3[4]}, [r2]
|
||||
@ -383,15 +383,15 @@
|
||||
vld4.16 {d17[1], d19[1], d21[1], d23[1]}, [r7]
|
||||
vld4.32 {d16[1], d18[1], d20[1], d22[1]}, [r8]
|
||||
|
||||
vld4.s8 {d16[1], d17[1], d18[1], d19[1]}, [r1, :32]!
|
||||
vld4.s16 {d16[1], d17[1], d18[1], d19[1]}, [r2, :64]!
|
||||
vld4.s32 {d16[1], d17[1], d18[1], d19[1]}, [r3, :128]!
|
||||
vld4.s8 {d16[1], d17[1], d18[1], d19[1]}, [r1:32]!
|
||||
vld4.s16 {d16[1], d17[1], d18[1], d19[1]}, [r2:64]!
|
||||
vld4.s32 {d16[1], d17[1], d18[1], d19[1]}, [r3:128]!
|
||||
vld4.u16 {d17[1], d19[1], d21[1], d23[1]}, [r7]!
|
||||
vld4.u32 {d16[1], d18[1], d20[1], d22[1]}, [r8]!
|
||||
|
||||
vld4.p8 {d16[1], d17[1], d18[1], d19[1]}, [r1, :32], r8
|
||||
vld4.p8 {d16[1], d17[1], d18[1], d19[1]}, [r1:32], r8
|
||||
vld4.p16 {d16[1], d17[1], d18[1], d19[1]}, [r2], r7
|
||||
vld4.f32 {d16[1], d17[1], d18[1], d19[1]}, [r3, :64], r5
|
||||
vld4.f32 {d16[1], d17[1], d18[1], d19[1]}, [r3:64], r5
|
||||
vld4.i16 {d16[1], d18[1], d20[1], d22[1]}, [r6], r3
|
||||
vld4.i32 {d17[1], d19[1], d21[1], d23[1]}, [r9], r4
|
||||
|
||||
@ -490,8 +490,17 @@
|
||||
|
||||
|
||||
@ Register lists can use the range syntax, just like VLDM
|
||||
vld1.f64 {d2-d5}, [r2,:128]!
|
||||
vld1.f64 {d2,d3,d4,d5}, [r2,:128]!
|
||||
vld1.f64 {d2-d5}, [r2:128]!
|
||||
vld1.f64 {d2,d3,d4,d5}, [r2:128]!
|
||||
|
||||
@ CHECK: vld1.64 {d2, d3, d4, d5}, [r2, :128]! @ encoding: [0xed,0x22,0x22,0xf4]
|
||||
@ CHECK: vld1.64 {d2, d3, d4, d5}, [r2, :128]! @ encoding: [0xed,0x22,0x22,0xf4]
|
||||
|
||||
|
||||
@ verify that the old incorrect alignment specifier syntax (", :")
|
||||
@ still gets accepted.
|
||||
vld2.8 {d16, d17}, [r0, :64]
|
||||
vld2.16 {d16, d17}, [r0, :128]
|
||||
|
||||
@ CHECK: vld2.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x08,0x60,0xf4]
|
||||
@ CHECK: vld2.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x08,0x60,0xf4]
|
||||
|
@ -1,18 +1,18 @@
|
||||
@ RUN: llvm-mc -mcpu=cortex-a8 -triple armv7-apple-darwin -show-encoding < %s | FileCheck %s
|
||||
|
||||
vst1.8 {d16}, [r0, :64]
|
||||
vst1.8 {d16}, [r0:64]
|
||||
vst1.16 {d16}, [r0]
|
||||
vst1.32 {d16}, [r0]
|
||||
vst1.64 {d16}, [r0]
|
||||
vst1.8 {d16, d17}, [r0, :64]
|
||||
vst1.16 {d16, d17}, [r0, :128]
|
||||
vst1.8 {d16, d17}, [r0:64]
|
||||
vst1.16 {d16, d17}, [r0:128]
|
||||
vst1.32 {d16, d17}, [r0]
|
||||
vst1.64 {d16, d17}, [r0]
|
||||
vst1.8 {d16, d17, d18}, [r0, :64]
|
||||
vst1.8 {d16, d17, d18}, [r0, :64]!
|
||||
vst1.8 {d16, d17, d18}, [r0:64]
|
||||
vst1.8 {d16, d17, d18}, [r0:64]!
|
||||
vst1.8 {d16, d17, d18}, [r0], r3
|
||||
vst1.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vst1.16 {d16, d17, d18, d19}, [r1, :64]!
|
||||
vst1.8 {d16, d17, d18, d19}, [r0:64]
|
||||
vst1.16 {d16, d17, d18, d19}, [r1:64]!
|
||||
vst1.64 {d16, d17, d18, d19}, [r3], r2
|
||||
|
||||
@ CHECK: vst1.8 {d16}, [r0, :64] @ encoding: [0x1f,0x07,0x40,0xf4]
|
||||
@ -31,18 +31,18 @@
|
||||
@ CHECK: vst1.64 {d16, d17, d18, d19}, [r3], r2 @ encoding: [0xc2,0x02,0x43,0xf4]
|
||||
|
||||
|
||||
vst2.8 {d16, d17}, [r0, :64]
|
||||
vst2.16 {d16, d17}, [r0, :128]
|
||||
vst2.8 {d16, d17}, [r0:64]
|
||||
vst2.16 {d16, d17}, [r0:128]
|
||||
vst2.32 {d16, d17}, [r0]
|
||||
vst2.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vst2.16 {d16, d17, d18, d19}, [r0, :128]
|
||||
vst2.32 {d16, d17, d18, d19}, [r0, :256]
|
||||
vst2.8 {d16, d17}, [r0, :64]!
|
||||
vst2.16 {q15}, [r0, :128]!
|
||||
vst2.8 {d16, d17, d18, d19}, [r0:64]
|
||||
vst2.16 {d16, d17, d18, d19}, [r0:128]
|
||||
vst2.32 {d16, d17, d18, d19}, [r0:256]
|
||||
vst2.8 {d16, d17}, [r0:64]!
|
||||
vst2.16 {q15}, [r0:128]!
|
||||
vst2.32 {d14, d15}, [r0]!
|
||||
vst2.8 {d16, d17, d18, d19}, [r0, :64]!
|
||||
vst2.16 {d18-d21}, [r0, :128]!
|
||||
vst2.32 {q4, q5}, [r0, :256]!
|
||||
vst2.8 {d16, d17, d18, d19}, [r0:64]!
|
||||
vst2.16 {d18-d21}, [r0:128]!
|
||||
vst2.32 {q4, q5}, [r0:256]!
|
||||
|
||||
@ CHECK: vst2.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x08,0x40,0xf4]
|
||||
@ CHECK: vst2.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x08,0x40,0xf4]
|
||||
@ -61,7 +61,7 @@
|
||||
vst3.8 {d16, d17, d18}, [r1]
|
||||
vst3.16 {d6, d7, d8}, [r2]
|
||||
vst3.32 {d1, d2, d3}, [r3]
|
||||
vst3.8 {d16, d18, d20}, [r0, :64]
|
||||
vst3.8 {d16, d18, d20}, [r0:64]
|
||||
vst3.u16 {d27, d29, d31}, [r4]
|
||||
vst3.i32 {d6, d8, d10}, [r5]
|
||||
|
||||
@ -75,7 +75,7 @@
|
||||
vst3.p8 {d6, d7, d8}, [r8]!
|
||||
vst3.16 {d9, d10, d11}, [r7]!
|
||||
vst3.f32 {d1, d2, d3}, [r6]!
|
||||
vst3.8 {d16, d18, d20}, [r0, :64]!
|
||||
vst3.8 {d16, d18, d20}, [r0:64]!
|
||||
vst3.p16 {d20, d22, d24}, [r5]!
|
||||
vst3.32 {d5, d7, d9}, [r4]!
|
||||
|
||||
@ -99,24 +99,24 @@
|
||||
@ CHECK: vst3.32 {d5, d7, d9}, [r4]! @ encoding: [0x8d,0x55,0x04,0xf4]
|
||||
|
||||
|
||||
vst4.8 {d16, d17, d18, d19}, [r1, :64]
|
||||
vst4.16 {d16, d17, d18, d19}, [r2, :128]
|
||||
vst4.32 {d16, d17, d18, d19}, [r3, :256]
|
||||
vst4.8 {d17, d19, d21, d23}, [r5, :256]
|
||||
vst4.8 {d16, d17, d18, d19}, [r1:64]
|
||||
vst4.16 {d16, d17, d18, d19}, [r2:128]
|
||||
vst4.32 {d16, d17, d18, d19}, [r3:256]
|
||||
vst4.8 {d17, d19, d21, d23}, [r5:256]
|
||||
vst4.16 {d17, d19, d21, d23}, [r7]
|
||||
vst4.32 {d16, d18, d20, d22}, [r8]
|
||||
|
||||
vst4.s8 {d16, d17, d18, d19}, [r1, :64]!
|
||||
vst4.s16 {d16, d17, d18, d19}, [r2, :128]!
|
||||
vst4.s32 {d16, d17, d18, d19}, [r3, :256]!
|
||||
vst4.u8 {d17, d19, d21, d23}, [r5, :256]!
|
||||
vst4.s8 {d16, d17, d18, d19}, [r1:64]!
|
||||
vst4.s16 {d16, d17, d18, d19}, [r2:128]!
|
||||
vst4.s32 {d16, d17, d18, d19}, [r3:256]!
|
||||
vst4.u8 {d17, d19, d21, d23}, [r5:256]!
|
||||
vst4.u16 {d17, d19, d21, d23}, [r7]!
|
||||
vst4.u32 {d16, d18, d20, d22}, [r8]!
|
||||
|
||||
vst4.p8 {d16, d17, d18, d19}, [r1, :64], r8
|
||||
vst4.p8 {d16, d17, d18, d19}, [r1:64], r8
|
||||
vst4.p16 {d16, d17, d18, d19}, [r2], r7
|
||||
vst4.f32 {d16, d17, d18, d19}, [r3, :64], r5
|
||||
vst4.i8 {d16, d18, d20, d22}, [r4, :256], r2
|
||||
vst4.f32 {d16, d17, d18, d19}, [r3:64], r5
|
||||
vst4.i8 {d16, d18, d20, d22}, [r4:256], r2
|
||||
vst4.i16 {d16, d18, d20, d22}, [r6], r3
|
||||
vst4.i32 {d17, d19, d21, d23}, [r9], r4
|
||||
|
||||
@ -140,22 +140,22 @@
|
||||
@ CHECK: vst4.32 {d17, d19, d21, d23}, [r9], r4 @ encoding: [0x84,0x11,0x49,0xf4]
|
||||
|
||||
|
||||
vst2.8 {d16[1], d17[1]}, [r0, :16]
|
||||
vst2.p16 {d16[1], d17[1]}, [r0, :32]
|
||||
vst2.8 {d16[1], d17[1]}, [r0:16]
|
||||
vst2.p16 {d16[1], d17[1]}, [r0:32]
|
||||
vst2.i32 {d16[1], d17[1]}, [r0]
|
||||
vst2.u16 {d17[1], d19[1]}, [r0]
|
||||
vst2.f32 {d17[0], d19[0]}, [r0, :64]
|
||||
vst2.f32 {d17[0], d19[0]}, [r0:64]
|
||||
|
||||
vst2.8 {d2[4], d3[4]}, [r2], r3
|
||||
vst2.u8 {d2[4], d3[4]}, [r2]!
|
||||
vst2.p8 {d2[4], d3[4]}, [r2]
|
||||
|
||||
vst2.16 {d17[1], d19[1]}, [r0]
|
||||
vst2.32 {d17[0], d19[0]}, [r0, :64]
|
||||
vst2.32 {d17[0], d19[0]}, [r0:64]
|
||||
vst2.i16 {d7[1], d9[1]}, [r1]!
|
||||
vst2.32 {d6[0], d8[0]}, [r2, :64]!
|
||||
vst2.32 {d6[0], d8[0]}, [r2:64]!
|
||||
vst2.16 {d2[1], d4[1]}, [r3], r5
|
||||
vst2.u32 {d5[0], d7[0]}, [r4, :64], r7
|
||||
vst2.u32 {d5[0], d7[0]}, [r4:64], r7
|
||||
|
||||
@ CHECK: vst2.8 {d16[1], d17[1]}, [r0, :16] @ encoding: [0x3f,0x01,0xc0,0xf4]
|
||||
@ CHECK: vst2.16 {d16[1], d17[1]}, [r0, :32] @ encoding: [0x5f,0x05,0xc0,0xf4]
|
||||
@ -216,15 +216,15 @@
|
||||
vst4.16 {d17[1], d19[1], d21[1], d23[1]}, [r7]
|
||||
vst4.32 {d16[1], d18[1], d20[1], d22[1]}, [r8]
|
||||
|
||||
vst4.s8 {d16[1], d17[1], d18[1], d19[1]}, [r1, :32]!
|
||||
vst4.s16 {d16[1], d17[1], d18[1], d19[1]}, [r2, :64]!
|
||||
vst4.s32 {d16[1], d17[1], d18[1], d19[1]}, [r3, :128]!
|
||||
vst4.s8 {d16[1], d17[1], d18[1], d19[1]}, [r1:32]!
|
||||
vst4.s16 {d16[1], d17[1], d18[1], d19[1]}, [r2:64]!
|
||||
vst4.s32 {d16[1], d17[1], d18[1], d19[1]}, [r3:128]!
|
||||
vst4.u16 {d17[1], d19[1], d21[1], d23[1]}, [r7]!
|
||||
vst4.u32 {d16[1], d18[1], d20[1], d22[1]}, [r8]!
|
||||
|
||||
vst4.p8 {d16[1], d17[1], d18[1], d19[1]}, [r1, :32], r8
|
||||
vst4.p8 {d16[1], d17[1], d18[1], d19[1]}, [r1:32], r8
|
||||
vst4.p16 {d16[1], d17[1], d18[1], d19[1]}, [r2], r7
|
||||
vst4.f32 {d16[1], d17[1], d18[1], d19[1]}, [r3, :64], r5
|
||||
vst4.f32 {d16[1], d17[1], d18[1], d19[1]}, [r3:64], r5
|
||||
vst4.i16 {d16[1], d18[1], d20[1], d22[1]}, [r6], r3
|
||||
vst4.i32 {d17[1], d19[1], d21[1], d23[1]}, [r9], r4
|
||||
|
||||
@ -269,10 +269,17 @@
|
||||
vst2.8 {d8, d10}, [r4]
|
||||
@ CHECK: vst2.8 {d8, d10}, [r4] @ encoding: [0x0f,0x89,0x04,0xf4]
|
||||
|
||||
vst1.32 {d9[1]}, [r3, :32]
|
||||
vst1.32 {d27[1]}, [r9, :32]!
|
||||
vst1.32 {d27[1]}, [r3, :32], r5
|
||||
vst1.32 {d9[1]}, [r3:32]
|
||||
vst1.32 {d27[1]}, [r9:32]!
|
||||
vst1.32 {d27[1]}, [r3:32], r5
|
||||
@ CHECK: vst1.32 {d9[1]}, [r3, :32] @ encoding: [0xbf,0x98,0x83,0xf4]
|
||||
@ CHECK: vst1.32 {d27[1]}, [r9, :32]! @ encoding: [0xbd,0xb8,0xc9,0xf4]
|
||||
@ CHECK: vst1.32 {d27[1]}, [r3, :32], r5 @ encoding: [0xb5,0xb8,0xc3,0xf4]
|
||||
|
||||
@ verify that the old incorrect alignment specifier syntax (", :")
|
||||
@ still gets accepted.
|
||||
vst2.8 {d16, d17}, [r0, :64]
|
||||
vst2.16 {d16, d17}, [r0, :128]
|
||||
|
||||
@ CHECK: vst2.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x08,0x40,0xf4]
|
||||
@ CHECK: vst2.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x08,0x40,0xf4]
|
@ -4,7 +4,7 @@
|
||||
.code 16
|
||||
|
||||
@ CHECK: vld1.8 {d16}, [r0, :64] @ encoding: [0x1f,0x07,0x60,0xf9]
|
||||
vld1.8 {d16}, [r0, :64]
|
||||
vld1.8 {d16}, [r0:64]
|
||||
@ CHECK: vld1.16 {d16}, [r0] @ encoding: [0x4f,0x07,0x60,0xf9]
|
||||
vld1.16 {d16}, [r0]
|
||||
@ CHECK: vld1.32 {d16}, [r0] @ encoding: [0x8f,0x07,0x60,0xf9]
|
||||
@ -12,37 +12,37 @@
|
||||
@ CHECK: vld1.64 {d16}, [r0] @ encoding: [0xcf,0x07,0x60,0xf9]
|
||||
vld1.64 {d16}, [r0]
|
||||
@ CHECK: vld1.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x0a,0x60,0xf9]
|
||||
vld1.8 {d16, d17}, [r0, :64]
|
||||
vld1.8 {d16, d17}, [r0:64]
|
||||
@ CHECK: vld1.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x0a,0x60,0xf9]
|
||||
vld1.16 {d16, d17}, [r0, :128]
|
||||
vld1.16 {d16, d17}, [r0:128]
|
||||
@ CHECK: vld1.32 {d16, d17}, [r0] @ encoding: [0x8f,0x0a,0x60,0xf9]
|
||||
vld1.32 {d16, d17}, [r0]
|
||||
@ CHECK: vld1.64 {d16, d17}, [r0] @ encoding: [0xcf,0x0a,0x60,0xf9]
|
||||
vld1.64 {d16, d17}, [r0]
|
||||
|
||||
@ CHECK: vld2.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x08,0x60,0xf9]
|
||||
vld2.8 {d16, d17}, [r0, :64]
|
||||
vld2.8 {d16, d17}, [r0:64]
|
||||
@ CHECK: vld2.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x08,0x60,0xf9]
|
||||
vld2.16 {d16, d17}, [r0, :128]
|
||||
vld2.16 {d16, d17}, [r0:128]
|
||||
@ CHECK: vld2.32 {d16, d17}, [r0] @ encoding: [0x8f,0x08,0x60,0xf9]
|
||||
vld2.32 {d16, d17}, [r0]
|
||||
@ CHECK: vld2.8 {d16, d17, d18, d19}, [r0, :64] @ encoding: [0x1f,0x03,0x60,0xf9]
|
||||
vld2.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vld2.8 {d16, d17, d18, d19}, [r0:64]
|
||||
@ CHECK: vld2.16 {d16, d17, d18, d19}, [r0, :128] @ encoding: [0x6f,0x03,0x60,0xf9]
|
||||
vld2.16 {d16, d17, d18, d19}, [r0, :128]
|
||||
vld2.16 {d16, d17, d18, d19}, [r0:128]
|
||||
@ CHECK: vld2.32 {d16, d17, d18, d19}, [r0, :256] @ encoding: [0xbf,0x03,0x60,0xf9]
|
||||
vld2.32 {d16, d17, d18, d19}, [r0, :256]
|
||||
vld2.32 {d16, d17, d18, d19}, [r0:256]
|
||||
|
||||
@ CHECK: vld3.8 {d16, d17, d18}, [r0, :64] @ encoding: [0x1f,0x04,0x60,0xf9]
|
||||
vld3.8 {d16, d17, d18}, [r0, :64]
|
||||
vld3.8 {d16, d17, d18}, [r0:64]
|
||||
@ CHECK: vld3.16 {d16, d17, d18}, [r0] @ encoding: [0x4f,0x04,0x60,0xf9]
|
||||
vld3.16 {d16, d17, d18}, [r0]
|
||||
@ CHECK: vld3.32 {d16, d17, d18}, [r0] @ encoding: [0x8f,0x04,0x60,0xf9]
|
||||
vld3.32 {d16, d17, d18}, [r0]
|
||||
@ CHECK: vld3.8 {d16, d18, d20}, [r0, :64]! @ encoding: [0x1d,0x05,0x60,0xf9]
|
||||
vld3.8 {d16, d18, d20}, [r0, :64]!
|
||||
vld3.8 {d16, d18, d20}, [r0:64]!
|
||||
@ CHECK: vld3.8 {d17, d19, d21}, [r0, :64]! @ encoding: [0x1d,0x15,0x60,0xf9]
|
||||
vld3.8 {d17, d19, d21}, [r0, :64]!
|
||||
vld3.8 {d17, d19, d21}, [r0:64]!
|
||||
@ CHECK: vld3.16 {d16, d18, d20}, [r0]! @ encoding: [0x4d,0x05,0x60,0xf9]
|
||||
vld3.16 {d16, d18, d20}, [r0]!
|
||||
@ CHECK: vld3.16 {d17, d19, d21}, [r0]! @ encoding: [0x4d,0x15,0x60,0xf9]
|
||||
@ -53,15 +53,15 @@
|
||||
vld3.32 {d17, d19, d21}, [r0]!
|
||||
|
||||
@ CHECK: vld4.8 {d16, d17, d18, d19}, [r0, :64] @ encoding: [0x1f,0x00,0x60,0xf9]
|
||||
vld4.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vld4.8 {d16, d17, d18, d19}, [r0:64]
|
||||
@ CHECK: vld4.16 {d16, d17, d18, d19}, [r0, :128] @ encoding: [0x6f,0x00,0x60,0xf9]
|
||||
vld4.16 {d16, d17, d18, d19}, [r0, :128]
|
||||
vld4.16 {d16, d17, d18, d19}, [r0:128]
|
||||
@ CHECK: vld4.32 {d16, d17, d18, d19}, [r0, :256] @ encoding: [0xbf,0x00,0x60,0xf9]
|
||||
vld4.32 {d16, d17, d18, d19}, [r0, :256]
|
||||
vld4.32 {d16, d17, d18, d19}, [r0:256]
|
||||
@ CHECK: vld4.8 {d16, d18, d20, d22}, [r0, :256]! @ encoding: [0x3d,0x01,0x60,0xf9]
|
||||
vld4.8 {d16, d18, d20, d22}, [r0, :256]!
|
||||
vld4.8 {d16, d18, d20, d22}, [r0:256]!
|
||||
@ CHECK: vld4.8 {d17, d19, d21, d23}, [r0, :256]! @ encoding: [0x3d,0x11,0x60,0xf9]
|
||||
vld4.8 {d17, d19, d21, d23}, [r0, :256]!
|
||||
vld4.8 {d17, d19, d21, d23}, [r0:256]!
|
||||
@ CHECK: vld4.16 {d16, d18, d20, d22}, [r0]! @ encoding: [0x4d,0x01,0x60,0xf9]
|
||||
vld4.16 {d16, d18, d20, d22}, [r0]!
|
||||
@ CHECK: vld4.16 {d17, d19, d21, d23}, [r0]! @ encoding: [0x4d,0x11,0x60,0xf9]
|
||||
@ -74,20 +74,20 @@
|
||||
@ CHECK: vld1.8 {d16[3]}, [r0] @ encoding: [0x6f,0x00,0xe0,0xf9]
|
||||
vld1.8 {d16[3]}, [r0]
|
||||
@ CHECK: vld1.16 {d16[2]}, [r0, :16] @ encoding: [0x9f,0x04,0xe0,0xf9]
|
||||
vld1.16 {d16[2]}, [r0, :16]
|
||||
vld1.16 {d16[2]}, [r0:16]
|
||||
@ CHECK: vld1.32 {d16[1]}, [r0, :32] @ encoding: [0xbf,0x08,0xe0,0xf9]
|
||||
vld1.32 {d16[1]}, [r0, :32]
|
||||
vld1.32 {d16[1]}, [r0:32]
|
||||
|
||||
@ CHECK: vld2.8 {d16[1], d17[1]}, [r0, :16] @ encoding: [0x3f,0x01,0xe0,0xf9]
|
||||
vld2.8 {d16[1], d17[1]}, [r0, :16]
|
||||
vld2.8 {d16[1], d17[1]}, [r0:16]
|
||||
@ CHECK: vld2.16 {d16[1], d17[1]}, [r0, :32] @ encoding: [0x5f,0x05,0xe0,0xf9]
|
||||
vld2.16 {d16[1], d17[1]}, [r0, :32]
|
||||
vld2.16 {d16[1], d17[1]}, [r0:32]
|
||||
@ CHECK: vld2.32 {d16[1], d17[1]}, [r0] @ encoding: [0x8f,0x09,0xe0,0xf9]
|
||||
vld2.32 {d16[1], d17[1]}, [r0]
|
||||
@ CHECK: vld2.16 {d17[1], d19[1]}, [r0] @ encoding: [0x6f,0x15,0xe0,0xf9]
|
||||
vld2.16 {d17[1], d19[1]}, [r0]
|
||||
@ CHECK: vld2.32 {d17[0], d19[0]}, [r0, :64] @ encoding: [0x5f,0x19,0xe0,0xf9]
|
||||
vld2.32 {d17[0], d19[0]}, [r0, :64]
|
||||
vld2.32 {d17[0], d19[0]}, [r0:64]
|
||||
|
||||
@ CHECK: vld3.8 {d16[1], d17[1], d18[1]}, [r0] @ encoding: [0x2f,0x02,0xe0,0xf9]
|
||||
vld3.8 {d16[1], d17[1], d18[1]}, [r0]
|
||||
@ -101,12 +101,12 @@
|
||||
vld3.32 {d17[1], d19[1], d21[1]}, [r0]
|
||||
|
||||
@ CHECK: vld4.8 {d16[1], d17[1], d18[1], d19[1]}, [r0, :32] @ encoding: [0x3f,0x03,0xe0,0xf9]
|
||||
vld4.8 {d16[1], d17[1], d18[1], d19[1]}, [r0, :32]
|
||||
vld4.8 {d16[1], d17[1], d18[1], d19[1]}, [r0:32]
|
||||
@ CHECK: vld4.16 {d16[1], d17[1], d18[1], d19[1]}, [r0] @ encoding: [0x4f,0x07,0xe0,0xf9]
|
||||
vld4.16 {d16[1], d17[1], d18[1], d19[1]}, [r0]
|
||||
@ CHECK: vld4.32 {d16[1], d17[1], d18[1], d19[1]}, [r0, :128] @ encoding: [0xaf,0x0b,0xe0,0xf9]
|
||||
vld4.32 {d16[1], d17[1], d18[1], d19[1]}, [r0, :128]
|
||||
vld4.32 {d16[1], d17[1], d18[1], d19[1]}, [r0:128]
|
||||
@ CHECK: vld4.16 {d16[1], d18[1], d20[1], d22[1]}, [r0, :64] @ encoding: [0x7f,0x07,0xe0,0xf9]
|
||||
vld4.16 {d16[1], d18[1], d20[1], d22[1]}, [r0, :64]
|
||||
vld4.16 {d16[1], d18[1], d20[1], d22[1]}, [r0:64]
|
||||
@ CHECK: vld4.32 {d17[0], d19[0], d21[0], d23[0]}, [r0] @ encoding: [0x4f,0x1b,0xe0,0xf9]
|
||||
vld4.32 {d17[0], d19[0], d21[0], d23[0]}, [r0]
|
||||
|
@ -4,7 +4,7 @@
|
||||
.code 16
|
||||
|
||||
@ CHECK: vst1.8 {d16}, [r0, :64] @ encoding: [0x1f,0x07,0x40,0xf9]
|
||||
vst1.8 {d16}, [r0, :64]
|
||||
vst1.8 {d16}, [r0:64]
|
||||
@ CHECK: vst1.16 {d16}, [r0] @ encoding: [0x4f,0x07,0x40,0xf9]
|
||||
vst1.16 {d16}, [r0]
|
||||
@ CHECK: vst1.32 {d16}, [r0] @ encoding: [0x8f,0x07,0x40,0xf9]
|
||||
@ -12,37 +12,37 @@
|
||||
@ CHECK: vst1.64 {d16}, [r0] @ encoding: [0xcf,0x07,0x40,0xf9]
|
||||
vst1.64 {d16}, [r0]
|
||||
@ CHECK: vst1.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x0a,0x40,0xf9]
|
||||
vst1.8 {d16, d17}, [r0, :64]
|
||||
vst1.8 {d16, d17}, [r0:64]
|
||||
@ CHECK: vst1.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x0a,0x40,0xf9]
|
||||
vst1.16 {d16, d17}, [r0, :128]
|
||||
vst1.16 {d16, d17}, [r0:128]
|
||||
@ CHECK: vst1.32 {d16, d17}, [r0] @ encoding: [0x8f,0x0a,0x40,0xf9]
|
||||
vst1.32 {d16, d17}, [r0]
|
||||
@ CHECK: vst1.64 {d16, d17}, [r0] @ encoding: [0xcf,0x0a,0x40,0xf9]
|
||||
vst1.64 {d16, d17}, [r0]
|
||||
|
||||
@ CHECK: vst2.8 {d16, d17}, [r0, :64] @ encoding: [0x1f,0x08,0x40,0xf9]
|
||||
vst2.8 {d16, d17}, [r0, :64]
|
||||
vst2.8 {d16, d17}, [r0:64]
|
||||
@ CHECK: vst2.16 {d16, d17}, [r0, :128] @ encoding: [0x6f,0x08,0x40,0xf9]
|
||||
vst2.16 {d16, d17}, [r0, :128]
|
||||
vst2.16 {d16, d17}, [r0:128]
|
||||
@ CHECK: vst2.32 {d16, d17}, [r0] @ encoding: [0x8f,0x08,0x40,0xf9]
|
||||
vst2.32 {d16, d17}, [r0]
|
||||
@ CHECK: vst2.8 {d16, d17, d18, d19}, [r0, :64] @ encoding: [0x1f,0x03,0x40,0xf9]
|
||||
vst2.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vst2.8 {d16, d17, d18, d19}, [r0:64]
|
||||
@ CHECK: vst2.16 {d16, d17, d18, d19}, [r0, :128] @ encoding: [0x6f,0x03,0x40,0xf9]
|
||||
vst2.16 {d16, d17, d18, d19}, [r0, :128]
|
||||
vst2.16 {d16, d17, d18, d19}, [r0:128]
|
||||
@ CHECK: vst2.32 {d16, d17, d18, d19}, [r0, :256] @ encoding: [0xbf,0x03,0x40,0xf9]
|
||||
vst2.32 {d16, d17, d18, d19}, [r0, :256]
|
||||
vst2.32 {d16, d17, d18, d19}, [r0:256]
|
||||
|
||||
@ CHECK: vst3.8 {d16, d17, d18}, [r0, :64] @ encoding: [0x1f,0x04,0x40,0xf9]
|
||||
vst3.8 {d16, d17, d18}, [r0, :64]
|
||||
vst3.8 {d16, d17, d18}, [r0:64]
|
||||
@ CHECK: vst3.16 {d16, d17, d18}, [r0] @ encoding: [0x4f,0x04,0x40,0xf9]
|
||||
vst3.16 {d16, d17, d18}, [r0]
|
||||
@ CHECK: vst3.32 {d16, d17, d18}, [r0] @ encoding: [0x8f,0x04,0x40,0xf9]
|
||||
vst3.32 {d16, d17, d18}, [r0]
|
||||
@ CHECK: vst3.8 {d16, d18, d20}, [r0, :64]! @ encoding: [0x1d,0x05,0x40,0xf9]
|
||||
vst3.8 {d16, d18, d20}, [r0, :64]!
|
||||
vst3.8 {d16, d18, d20}, [r0:64]!
|
||||
@ CHECK: vst3.8 {d17, d19, d21}, [r0, :64]! @ encoding: [0x1d,0x15,0x40,0xf9]
|
||||
vst3.8 {d17, d19, d21}, [r0, :64]!
|
||||
vst3.8 {d17, d19, d21}, [r0:64]!
|
||||
@ CHECK: vst3.16 {d16, d18, d20}, [r0]! @ encoding: [0x4d,0x05,0x40,0xf9]
|
||||
vst3.16 {d16, d18, d20}, [r0]!
|
||||
@ CHECK: vst3.16 {d17, d19, d21}, [r0]! @ encoding: [0x4d,0x15,0x40,0xf9]
|
||||
@ -53,13 +53,13 @@
|
||||
vst3.32 {d17, d19, d21}, [r0]!
|
||||
|
||||
@ CHECK: vst4.8 {d16, d17, d18, d19}, [r0, :64] @ encoding: [0x1f,0x00,0x40,0xf9]
|
||||
vst4.8 {d16, d17, d18, d19}, [r0, :64]
|
||||
vst4.8 {d16, d17, d18, d19}, [r0:64]
|
||||
@ CHECK: vst4.16 {d16, d17, d18, d19}, [r0, :128] @ encoding: [0x6f,0x00,0x40,0xf9]
|
||||
vst4.16 {d16, d17, d18, d19}, [r0, :128]
|
||||
vst4.16 {d16, d17, d18, d19}, [r0:128]
|
||||
@ CHECK: vst4.8 {d16, d18, d20, d22}, [r0, :256]! @ encoding: [0x3d,0x01,0x40,0xf9]
|
||||
vst4.8 {d16, d18, d20, d22}, [r0, :256]!
|
||||
vst4.8 {d16, d18, d20, d22}, [r0:256]!
|
||||
@ CHECK: vst4.8 {d17, d19, d21, d23}, [r0, :256]! @ encoding: [0x3d,0x11,0x40,0xf9]
|
||||
vst4.8 {d17, d19, d21, d23}, [r0, :256]!
|
||||
vst4.8 {d17, d19, d21, d23}, [r0:256]!
|
||||
@ CHECK: vst4.16 {d16, d18, d20, d22}, [r0]! @ encoding: [0x4d,0x01,0x40,0xf9]
|
||||
vst4.16 {d16, d18, d20, d22}, [r0]!
|
||||
@ CHECK: vst4.16 {d17, d19, d21, d23}, [r0]! @ encoding: [0x4d,0x11,0x40,0xf9]
|
||||
@ -70,15 +70,15 @@
|
||||
vst4.32 {d17, d19, d21, d23}, [r0]!
|
||||
|
||||
@ CHECK: vst2.8 {d16[1], d17[1]}, [r0, :16] @ encoding: [0x3f,0x01,0xc0,0xf9]
|
||||
vst2.8 {d16[1], d17[1]}, [r0, :16]
|
||||
vst2.8 {d16[1], d17[1]}, [r0:16]
|
||||
@ CHECK: vst2.16 {d16[1], d17[1]}, [r0, :32] @ encoding: [0x5f,0x05,0xc0,0xf9]
|
||||
vst2.16 {d16[1], d17[1]}, [r0, :32]
|
||||
vst2.16 {d16[1], d17[1]}, [r0:32]
|
||||
@ CHECK: vst2.32 {d16[1], d17[1]}, [r0] @ encoding: [0x8f,0x09,0xc0,0xf9]
|
||||
vst2.32 {d16[1], d17[1]}, [r0]
|
||||
@ CHECK: vst2.16 {d17[1], d19[1]}, [r0] @ encoding: [0x6f,0x15,0xc0,0xf9]
|
||||
vst2.16 {d17[1], d19[1]}, [r0]
|
||||
@ CHECK: vst2.32 {d17[0], d19[0]}, [r0, :64] @ encoding: [0x5f,0x19,0xc0,0xf9]
|
||||
vst2.32 {d17[0], d19[0]}, [r0, :64]
|
||||
vst2.32 {d17[0], d19[0]}, [r0:64]
|
||||
|
||||
@ CHECK: vst3.8 {d16[1], d17[1], d18[1]}, [r0] @ encoding: [0x2f,0x02,0xc0,0xf9]
|
||||
vst3.8 {d16[1], d17[1], d18[1]}, [r0]
|
||||
@ -92,13 +92,13 @@
|
||||
vst3.32 {d16[0], d18[0], d20[0]}, [r0]
|
||||
|
||||
@ CHECK: vst4.8 {d16[1], d17[1], d18[1], d19[1]}, [r0, :32] @ encoding: [0x3f,0x03,0xc0,0xf9]
|
||||
vst4.8 {d16[1], d17[1], d18[1], d19[1]}, [r0, :32]
|
||||
vst4.8 {d16[1], d17[1], d18[1], d19[1]}, [r0:32]
|
||||
@ CHECK: vst4.16 {d16[1], d17[1], d18[1], d19[1]}, [r0] @ encoding: [0x4f,0x07,0xc0,0xf9]
|
||||
vst4.16 {d16[1], d17[1], d18[1], d19[1]}, [r0]
|
||||
@ CHECK: vst4.32 {d16[1], d17[1], d18[1], d19[1]}, [r0, :128] @ encoding: [0xaf,0x0b,0xc0,0xf9]
|
||||
vst4.32 {d16[1], d17[1], d18[1], d19[1]}, [r0, :128]
|
||||
vst4.32 {d16[1], d17[1], d18[1], d19[1]}, [r0:128]
|
||||
@ CHECK: vst4.16 {d17[3], d19[3], d21[3], d23[3]}, [r0, :64] @ encoding: [0xff,0x17,0xc0,0xf9]
|
||||
vst4.16 {d17[3], d19[3], d21[3], d23[3]}, [r0, :64]
|
||||
vst4.16 {d17[3], d19[3], d21[3], d23[3]}, [r0:64]
|
||||
@ CHECK: vst4.32 {d17[0], d19[0], d21[0], d23[0]}, [r0] @ encoding: [0x4f,0x1b,0xc0,0xf9]
|
||||
vst4.32 {d17[0], d19[0], d21[0], d23[0]}, [r0]
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
# -------------------------------------------------------------------------------------------------
|
||||
#
|
||||
# A8.6.391 VST1 (multiple single elements)
|
||||
# This encoding looks like: vst1.8 {d0,d1,d2}, [r0, :128]
|
||||
# This encoding looks like: vst1.8 {d0,d1,d2}, [r0:128]
|
||||
# But bits 5-4 for the alignment of 128 encoded as align = 0b10, is available only if <list>
|
||||
# contains two or four registers. rdar://11220250
|
||||
0x00 0xf9 0x2f 0x06
|
||||
|
Loading…
x
Reference in New Issue
Block a user