xref: /aosp_15_r20/external/llvm/test/MC/ARM/directive-arch-armv4.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker@ Test the .arch directive for armv4
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker@ This test case will check the default .ARM.attributes value for the
4*9880d681SAndroid Build Coastguard Worker@ armv4 architecture.
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc -triple arm-eabi -filetype asm %s \
7*9880d681SAndroid Build Coastguard Worker@ RUN:   | FileCheck %s -check-prefix CHECK-ASM
8*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc -triple arm-eabi -filetype obj %s \
9*9880d681SAndroid Build Coastguard Worker@ RUN:   | llvm-readobj -arm-attributes | FileCheck %s -check-prefix CHECK-ATTR
10*9880d681SAndroid Build Coastguard Worker
11*9880d681SAndroid Build Coastguard Worker	.syntax	unified
12*9880d681SAndroid Build Coastguard Worker	.arch	armv4
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Worker@ CHECK-ASM: 	.arch	armv4
15*9880d681SAndroid Build Coastguard Worker
16*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR: FileAttributes {
17*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:   Attribute {
18*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:     TagName: CPU_name
19*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:     Value: 4
20*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:   }
21*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:   Attribute {
22*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:     TagName: CPU_arch
23*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:     Description: ARM v4
24*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:   }
25*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:   Attribute {
26*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:     TagName: ARM_ISA_use
27*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:     Description: Permitted
28*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR:   }
29*9880d681SAndroid Build Coastguard Worker@ CHECK-ATTR: }
30*9880d681SAndroid Build Coastguard Worker
31*9880d681SAndroid Build Coastguard Worker@ Check that multiplication is supported
32*9880d681SAndroid Build Coastguard Worker	mul r4, r5, r6
33*9880d681SAndroid Build Coastguard Worker	mla r4, r5, r6, r3
34*9880d681SAndroid Build Coastguard Worker	smull r4, r5, r6, r3
35*9880d681SAndroid Build Coastguard Worker	umull r4, r5, r6, r3
36*9880d681SAndroid Build Coastguard Worker	smlal r4, r5, r6, r3
37*9880d681SAndroid Build Coastguard Worker	umlal r4, r5, r6, r3
38*9880d681SAndroid Build Coastguard Worker
39