[llvm] [AArch64] Add assembly/disaasembly of atomic ld/st (PR #112892)

via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 18 07:48:22 PDT 2024


================
@@ -0,0 +1,241 @@
+// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+lsfe 2>&1 < %s| FileCheck %s
+
+//------------------------------------------------------------------------------
+// LDFMAX
+//------------------------------------------------------------------------------
+
+ldfmax h0, s2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmax h0, s2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmax s0, d2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmax s0, d2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmax d0, h1, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmax d0, h1, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmax d0, d1, [w2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmax d0, d1, [w2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmax s0, s1, [x2, #4]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmax s0, s1, [x2, #4]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+// -- ldfmaxa
+
+ldfmaxa h0, s2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxa h0, s2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxa s0, d2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxa s0, d2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxa d0, h1, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxa d0, h1, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxa d0, d1, [w2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxa d0, d1, [w2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxa s0, s1, [x2, #4]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxa s0, s1, [x2, #4]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+// -- ldfmaxal
+
+ldfmaxal h0, s2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxal h0, s2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxal s0, d2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxal s0, d2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxal d0, h1, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxal d0, h1, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxal d0, d1, [w2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxal d0, d1, [w2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxal s0, s1, [x2, #4]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxal s0, s1, [x2, #4]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+// -- ldfmaxl
+
+ldfmaxl h0, s2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxl h0, s2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxl s0, d2, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxl s0, d2, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxl d0, h1, [x2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxl d0, h1, [x2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxl d0, d1, [w2]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxl d0, d1, [w2]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+ldfmaxl s0, s1, [x2, #4]
+// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
+// CHECK-NEXT: ldfmaxl s0, s1, [x2, #4]
+// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
+
+//------------------------------------------------------------------------------
+// ldbfmax
----------------
SpencerAbson wrote:

nit: this comment would be in caps

https://github.com/llvm/llvm-project/pull/112892


More information about the llvm-commits mailing list