xref: /llvm-project/llvm/test/MC/CSKY/fpuv3.s (revision ec642ceebc1aacc8b16249df7734b8cf90ae2963)
1# RUN: llvm-mc %s -triple=csky -show-encoding -csky-no-aliases -mattr=+fpuv3_sf,+fpuv3_df \
2# RUN:     | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
3# RUN: llvm-mc -filetype=obj -triple=csky -mattr=+fpuv3_sf,+fpuv3_df < %s \
4# RUN:     | llvm-objdump --mattr=+fpuv3_sf,+fpuv3_df -M no-aliases -M abi-names -d -r - \
5# RUN:     | FileCheck -check-prefixes=CHECK-ASM-AND-OBJ %s
6
7# CHECK-ASM-AND-OBJ: fldm.32 vr1-vr2, (a1)
8# CHECK-ASM: encoding: [0x21,0xf4,0x01,0x30]
9fldm.32  vr1-vr2, (a1)
10
11# CHECK-ASM-AND-OBJ: fldm.64 vr1-vr2, (a1)
12# CHECK-ASM: encoding: [0x21,0xf4,0x01,0x31]
13fldm.64  vr1-vr2, (a1)
14
15# CHECK-ASM-AND-OBJ: fstm.32 vr1-vr2, (a1)
16# CHECK-ASM: encoding: [0x21,0xf4,0x01,0x34]
17fstm.32 vr1-vr2, (a1)
18
19# CHECK-ASM-AND-OBJ: fstm.64 vr1-vr2, (a1)
20# CHECK-ASM: encoding: [0x21,0xf4,0x01,0x35]
21fstm.64  vr1-vr2, (a1)
22
23# RUN: not llvm-mc -triple csky -mattr=+fpuv3_sf -mattr=+fpuv3_df --defsym=ERR=1 < %s 2>&1 | FileCheck %s
24
25.ifdef ERR
26fstm.32  vr1-vr33, (a1) # CHECK: :[[#@LINE]]:14: error: invalid register
27fstm.64  vr1-vr33, (a1) # CHECK: :[[#@LINE]]:14: error: invalid register
28fldm.32  vr1-vr33, (a1) # CHECK: :[[#@LINE]]:14: error: invalid register
29fldm.64  vr1-vr33, (a1) # CHECK: :[[#@LINE]]:14: error: invalid register
30.endif
31