summaryrefslogtreecommitdiff
path: root/test/MC/ARM
diff options
context:
space:
mode:
authorKristof Beyls <kristof.beyls@arm.com>2013-02-14 14:46:12 +0000
committerKristof Beyls <kristof.beyls@arm.com>2013-02-14 14:46:12 +0000
commitb1d081230e40e5c86f3cc44a7cfd7241732eabfb (patch)
treef9241d045f8dc6e1aa328fd1a3cdaeeda14c90c3 /test/MC/ARM
parentb181919d86bd46fdb6c21d782ccabf754167951a (diff)
downloadllvm-b1d081230e40e5c86f3cc44a7cfd7241732eabfb.tar.gz
llvm-b1d081230e40e5c86f3cc44a7cfd7241732eabfb.tar.bz2
llvm-b1d081230e40e5c86f3cc44a7cfd7241732eabfb.tar.xz
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
Diffstat (limited to 'test/MC/ARM')
-rw-r--r--test/MC/ARM/neon-vld-encoding.s133
-rw-r--r--test/MC/ARM/neon-vst-encoding.s95
-rw-r--r--test/MC/ARM/neont2-vld-encoding.s48
-rw-r--r--test/MC/ARM/neont2-vst-encoding.s42
4 files changed, 167 insertions, 151 deletions
diff --git a/test/MC/ARM/neon-vld-encoding.s b/test/MC/ARM/neon-vld-encoding.s
index 3cc6bf11cf..6e55c648ce 100644
--- a/test/MC/ARM/neon-vld-encoding.s
+++ b/test/MC/ARM/neon-vld-encoding.s
@@ -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]
diff --git a/test/MC/ARM/neon-vst-encoding.s b/test/MC/ARM/neon-vst-encoding.s
index f5feca4c8c..4629721380 100644
--- a/test/MC/ARM/neon-vst-encoding.s
+++ b/test/MC/ARM/neon-vst-encoding.s
@@ -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] \ No newline at end of file
diff --git a/test/MC/ARM/neont2-vld-encoding.s b/test/MC/ARM/neont2-vld-encoding.s
index 031205a5cc..7f7a099de9 100644
--- a/test/MC/ARM/neont2-vld-encoding.s
+++ b/test/MC/ARM/neont2-vld-encoding.s
@@ -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]
diff --git a/test/MC/ARM/neont2-vst-encoding.s b/test/MC/ARM/neont2-vst-encoding.s
index b50d8b63c1..fca7d5ed39 100644
--- a/test/MC/ARM/neont2-vst-encoding.s
+++ b/test/MC/ARM/neont2-vst-encoding.s
@@ -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]