• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve  2>&1 < %s| FileCheck %s
2
3fadda b0, p7, b0, z31.b
4// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
5// CHECK-NEXT: fadda b0, p7, b0, z31.b
6// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
7
8fadda h0, p7, h1, z31.h
9// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: operand must match destination register
10// CHECK-NEXT: fadda h0, p7, h1, z31.h
11// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
12
13fadda v0.8h, p7, v0.8h, z31.h
14// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
15// CHECK-NEXT: fadda v0.8h, p7, v0.8h, z31.h
16// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
17
18
19// ------------------------------------------------------------------------- //
20// Invalid predicate operand
21
22fadda h0, p8, h0, z31.h
23// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)
24// CHECK-NEXT: fadda h0, p8, h0, z31.h
25// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
26
27fadda h0, p7.b, h0, z31.h
28// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)
29// CHECK-NEXT: fadda h0, p7.b, h0, z31.h
30// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
31
32fadda h0, p7.q, h0, z31.h
33// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)
34// CHECK-NEXT: fadda h0, p7.q, h0, z31.h
35// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
36
37
38// --------------------------------------------------------------------------//
39// Negative tests for instructions that are incompatible with movprfx
40
41movprfx z31.d, p7/z, z6.d
42fadda d0, p7, d0, z31.d
43// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx, suggest replacing movprfx with mov
44// CHECK-NEXT: fadda d0, p7, d0, z31.d
45// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
46
47movprfx z31, z6
48fadda d0, p7, d0, z31.d
49// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a movprfx, suggest replacing movprfx with mov
50// CHECK-NEXT: fadda d0, p7, d0, z31.d
51// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
52