• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Tests for transactional memory extension instructions
2// RUN: not llvm-mc -triple aarch64 -show-encoding -mattr=+tme < %s 2>&1   | FileCheck %s
3
4tstart
5// CHECK: error: too few operands for instruction
6// CHECK-NEXT: tstart
7tstart  x4, x5
8// CHECK: error: invalid operand for instruction
9// CHECK-NEXT: tstart x4, x5
10tstart  x4, #1
11// CHECK: error: invalid operand for instruction
12// CHECK-NEXT: tstart x4, #1
13tstart  sp
14// CHECK: error: invalid operand for instruction
15// CHECK-NEXT: tstart sp
16
17ttest
18// CHECK: error: too few operands for instruction
19// CHECK-NEXT: ttest
20ttest  x4, x5
21// CHECK: error: invalid operand for instruction
22// CHECK-NEXT: ttest x4, x5
23ttest  x4, #1
24// CHECK: error: invalid operand for instruction
25// CHECK-NEXT: ttest x4, #1
26ttest  sp
27// CHECK: error: invalid operand for instruction
28// CHECK-NEXT: ttest sp
29
30tcommit  x4
31// CHECK: error: invalid operand for instruction
32// CHECK-NEXT: tcommit x4
33tcommit  sp
34// CHECK: error: invalid operand for instruction
35// CHECK-NEXT: tcommit sp
36
37
38tcancel
39// CHECK: error: too few operands for instruction
40// CHECK-NEXT: tcancel
41tcancel x0
42// CHECK: error: immediate must be an integer in range [0, 65535]
43// CHECK-NEXT: tcancel
44tcancel #65536
45// CHECK: error: immediate must be an integer in range [0, 65535]
46// CHECK-NEXT: tcancel #65536
47
48