52 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
| @ RUN: llvm-mc -triple armv8 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ARMV8
 | |
| @ RUN: llvm-mc -triple thumbv8 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-THUMBV8
 | |
| @ RUN: llvm-mc -triple armv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ARMV7
 | |
| @ RUN: llvm-mc -triple thumbv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-THUMBV7
 | |
| @ RUN: llvm-mc -triple armv6 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ARMV6
 | |
| setend be
 | |
| @ CHECK-ARMV8: warning: deprecated
 | |
| @ CHECK-THUMBV8: warning: deprecated
 | |
| @ CHECK-ARMV7-NOT: warning: deprecated
 | |
| @ CHECK-THUMBV7-NOT: warning: deprecated
 | |
| mcr p15, #0, r5, c7, c5, #4
 | |
| @ CHECK-ARMV8: warning: deprecated since v7, use 'isb'
 | |
| @ CHECK-THUMBV8: warning: deprecated since v7, use 'isb'
 | |
| @ CHECK-ARMV7: warning: deprecated since v7, use 'isb'
 | |
| @ CHECK-THUMBV7: warning: deprecated since v7, use 'isb'
 | |
| @ CHECK-ARMV6-NOT: warning: deprecated since v7, use 'isb'
 | |
| mcr p15, #0, r5, c7, c10, #4
 | |
| @ CHECK-ARMV8: warning: deprecated since v7, use 'dsb'
 | |
| @ CHECK-THUMBV8: warning: deprecated since v7, use 'dsb'
 | |
| @ CHECK-ARMV7: warning: deprecated since v7, use 'dsb'
 | |
| @ CHECK-THUMBV7: warning: deprecated since v7, use 'dsb'
 | |
| @ CHECK-ARMV6-NOT: warning: deprecated since v7, use 'dsb'
 | |
| mcr p15, #0, r5, c7, c10, #5
 | |
| @ CHECK-ARMV8: warning: deprecated since v7, use 'dmb'
 | |
| @ CHECK-THUMBV8: warning: deprecated since v7, use 'dmb'
 | |
| @ CHECK-ARMV7: warning: deprecated since v7, use 'dmb'
 | |
| @ CHECK-THUMBV7: warning: deprecated since v7, use 'dmb'
 | |
| @ CHECK-ARMV6-NOT: warning: deprecated since v7, use 'dmb'
 | |
| it ge
 | |
| movge r0, #4096
 | |
| @ CHECK-THUMBV8: warning: deprecated instruction in IT block
 | |
| @ CHECK-THUMBV7-NOT: warning
 | |
| ite ge
 | |
| addge r0, r1
 | |
| addlt r0, r2
 | |
| @ CHECK-ARMV8: warning: applying IT instruction to more than one subsequent instruction is deprecated
 | |
| @ CHECK-THUMBV8: warning: applying IT instruction to more than one subsequent instruction is deprecated
 | |
| @ CHECK-THUMBV7-NOT: warning
 | |
| it ge
 | |
| movge r0, pc // invalid operand
 | |
| @ CHECK-THUMBV8: warning: deprecated instruction in IT block
 | |
| @ CHECK-THUMBV7-NOT: warning
 | |
| it ge
 | |
| revge r0, r0 // invalid instruction
 | |
| @ CHECK-THUMBV8: warning: deprecated instruction in IT block
 | |
| @ CHECK-THUMBV7-NOT: warning
 | |
| it ge
 | |
| clzge r0, r0 // only has 32-bit form
 | |
| @ CHECK-THUMBV8: warning: deprecated instruction in IT block
 | |
| @ CHECK-THUMBV7-NOT: warning
 | |
| 
 |