xref: /llvm-project/llvm/test/MC/ARM/deprecated-v8.s (revision 3d7662142d50e4137332a0aa9d1e7d727aeb5941)
1@ RUN: llvm-mc -triple armv8 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ARMV8
2@ RUN: llvm-mc -triple thumbv8 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-THUMBV8
3@ RUN: llvm-mc -triple armv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ARMV7
4@ RUN: llvm-mc -triple thumbv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-THUMBV7
5@ RUN: llvm-mc -triple armv6 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ARMV6
6@ RUN: llvm-mc -triple thumbv8 -show-encoding -no-deprecated-warn < %s 2>&1 | FileCheck %s --check-prefix=CHECK-NO-WARN
7setend be
8@ CHECK-ARMV8: warning: deprecated
9@ CHECK-THUMBV8: warning: deprecated
10@ CHECK-ARMV7-NOT: warning: deprecated
11@ CHECK-THUMBV7-NOT: warning: deprecated
12@ CHECK-NO-WARN-NOT: warning: deprecated
13mcr p15, #0, r5, c7, c5, #4
14@ CHECK-ARMV8: warning: deprecated since v7, use 'isb'
15@ CHECK-THUMBV8: warning: deprecated since v7, use 'isb'
16@ CHECK-ARMV7: warning: deprecated since v7, use 'isb'
17@ CHECK-THUMBV7: warning: deprecated since v7, use 'isb'
18@ CHECK-ARMV6-NOT: warning: deprecated since v7, use 'isb'
19@ CHECK-NO-WARN-NOT: warning: deprecated since v7, use 'isb'
20mcr p15, #0, r5, c7, c10, #4
21@ CHECK-ARMV8: warning: deprecated since v7, use 'dsb'
22@ CHECK-THUMBV8: warning: deprecated since v7, use 'dsb'
23@ CHECK-ARMV7: warning: deprecated since v7, use 'dsb'
24@ CHECK-THUMBV7: warning: deprecated since v7, use 'dsb'
25@ CHECK-ARMV6-NOT: warning: deprecated since v7, use 'dsb'
26@ CHECK-NO-WARN-NOT: warning: deprecated since v7, use 'dsb'
27mcr p15, #0, r5, c7, c10, #5
28@ CHECK-ARMV8: warning: deprecated since v7, use 'dmb'
29@ CHECK-THUMBV8: warning: deprecated since v7, use 'dmb'
30@ CHECK-ARMV7: warning: deprecated since v7, use 'dmb'
31@ CHECK-THUMBV7: warning: deprecated since v7, use 'dmb'
32@ CHECK-ARMV6-NOT: warning: deprecated since v7, use 'dmb'
33@ CHECK-NO-WARN-NOT: warning: deprecated since v7, use 'dmb'
34it ge
35movge r0, #4096
36@ CHECK-THUMBV8-NOT: warning
37@ CHECK-THUMBV7-NOT: warning
38@ CHECK-NO-WARN-NOT: warning
39ite ge
40addge r0, r1
41addlt r0, r2
42@ CHECK-ARMV8-NOT: warning
43@ CHECK-THUMBV8-NOT: warning
44@ CHECK-THUMBV7-NOT: warning
45@ CHECK-NO-WARN-NOT: warning
46it ge
47movge r0, pc // invalid operand
48@ CHECK-THUMBV8-NOT: warning
49@ CHECK-THUMBV7-NOT: warning
50@ CHECK-NO-WARN-NOT: warning
51it ge
52revge r0, r0 // invalid instruction
53@ CHECK-THUMBV8-NOT: warning
54@ CHECK-THUMBV7-NOT: warning
55@ CHECK-NO-WARN-NOT: warning
56it ge
57clzge r0, r0 // only has 32-bit form
58@ CHECK-THUMBV8-NOT: warning
59@ CHECK-THUMBV7-NOT: warning
60@ CHECK-NO-WARN-NOT: warning
61