xref: /aosp_15_r20/external/llvm/test/MC/ARM/neon-mov-vfp.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -mcpu=cortex-a8 -triple armv7-unknown-unknown -show-encoding -mattr=-neon < %s 2>&1 | FileCheck %s --check-prefix=VFP --check-prefix=CHECK
2*9880d681SAndroid Build Coastguard Worker@ RUN: not llvm-mc -mcpu=cortex-a8 -triple thumbv7-unknown-unknown -show-encoding -mattr=-neon < %s 2>&1 | FileCheck %s --check-prefix=VFP --check-prefix=CHECK
3*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc -mcpu=cortex-a8 -triple armv7-unknown-unknown -show-encoding -mattr=+neon < %s 2>&1 | FileCheck %s --check-prefix=NEON --check-prefix=CHECK
4*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc -mcpu=cortex-a8 -triple thumbv7-unknown-unknown -show-encoding -mattr=+neon < %s 2>&1 | FileCheck %s --check-prefix=NEON --check-prefix=CHECK
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard Worker@ The 32-bit variants of the NEON scalar move instructions are also available
7*9880d681SAndroid Build Coastguard Worker@ to any core with VFPv2
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker@ CHECK-DAG: vmov.32 d13[0], r6 @ encoding:
10*9880d681SAndroid Build Coastguard Worker@ CHECK-DAG: vmov.32 d17[1], r9 @ encoding:
11*9880d681SAndroid Build Coastguard Workervmov.32 d13[0], r6
12*9880d681SAndroid Build Coastguard Workervmov.32 d17[1], r9
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Worker@ VFP-DAG: error: instruction requires: NEON
15*9880d681SAndroid Build Coastguard Worker@ VFP-DAG: error: instruction requires: NEON
16*9880d681SAndroid Build Coastguard Worker@ NEON-DAG: vmov.8  d22[5], r2 @ encoding:
17*9880d681SAndroid Build Coastguard Worker@ NEON-DAG: vmov.16 d3[2], r4 @ encoding:
18*9880d681SAndroid Build Coastguard Workervmov.8 d22[5], r2
19*9880d681SAndroid Build Coastguard Workervmov.16 d3[2], r4
20*9880d681SAndroid Build Coastguard Worker
21*9880d681SAndroid Build Coastguard Worker@ CHECK-DAG: vmov.32 r6, d13[0] @ encoding:
22*9880d681SAndroid Build Coastguard Worker@ CHECK-DAG: vmov.32 r9, d17[1] @ encoding:
23*9880d681SAndroid Build Coastguard Workervmov.32 r6, d13[0]
24*9880d681SAndroid Build Coastguard Workervmov.32 r9, d17[1]
25*9880d681SAndroid Build Coastguard Worker
26*9880d681SAndroid Build Coastguard Worker@ VFP-DAG: error: instruction requires: NEON
27*9880d681SAndroid Build Coastguard Worker@ VFP-DAG: error: instruction requires: NEON
28*9880d681SAndroid Build Coastguard Worker@ NEON-DAG: vmov.s8 r2, d22[5] @ encoding:
29*9880d681SAndroid Build Coastguard Worker@ NEON-DAG: vmov.u16        r4, d3[2] @ encoding:
30*9880d681SAndroid Build Coastguard Workervmov.s8 r2, d22[5]
31*9880d681SAndroid Build Coastguard Workervmov.u16 r4, d3[2]
32*9880d681SAndroid Build Coastguard Worker
33