blob: 387bb116fe86f51f718eb0b64d4b546cd95aba4a [file] [log] [blame] [edit]
# XAndesVSIntLoad - Andes Vector INT4 Load Extension
# RUN: llvm-mc %s -triple=riscv32 -mattr=+xandesvsinth -show-encoding \
# RUN: | FileCheck -check-prefixes=CHECK-ASM %s
# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=+xandesvsinth < %s \
# RUN: | llvm-objdump --mattr=+xandesvsinth -M no-aliases -d -r - \
# RUN: | FileCheck -check-prefixes=CHECK-OBJ %s
# RUN: not llvm-mc -triple=riscv32 -show-encoding %s 2>&1 \
# RUN: | FileCheck %s --check-prefix=CHECK-ERROR
# RUN: llvm-mc %s -triple=riscv64 -mattr=+xandesvsinth -show-encoding \
# RUN: | FileCheck -check-prefixes=CHECK-ASM %s
# RUN: llvm-mc -filetype=obj -triple riscv64 -mattr=+xandesvsinth < %s \
# RUN: | llvm-objdump --mattr=+xandesvsinth -M no-aliases -d -r - \
# RUN: | FileCheck -check-prefixes=CHECK-OBJ %s
# RUN: not llvm-mc -triple=riscv64 -show-encoding %s 2>&1 \
# RUN: | FileCheck %s --check-prefix=CHECK-ERROR
# CHECK-OBJ: nds.vfwcvt.f.n.v v8, v10
# CHECK-ASM: nds.vfwcvt.f.n.v v8, v10
# CHECK-ASM: encoding: [0x5b,0x44,0xa2,0x02]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.n.v v8, v10
# CHECK-OBJ: nds.vfwcvt.f.n.v v8, v10, v0.t
# CHECK-ASM: nds.vfwcvt.f.n.v v8, v10, v0.t
# CHECK-ASM: encoding: [0x5b,0x44,0xa2,0x00]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.n.v v8, v10, v0.t
# CHECK-OBJ: nds.vfwcvt.f.nu.v v8, v10
# CHECK-ASM: nds.vfwcvt.f.nu.v v8, v10
# CHECK-ASM: encoding: [0x5b,0xc4,0xa2,0x02]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.nu.v v8, v10
# CHECK-OBJ: nds.vfwcvt.f.nu.v v8, v10, v0.t
# CHECK-ASM: nds.vfwcvt.f.nu.v v8, v10, v0.t
# CHECK-ASM: encoding: [0x5b,0xc4,0xa2,0x00]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.nu.v v8, v10, v0.t
# CHECK-OBJ: nds.vfwcvt.f.b.v v8, v10
# CHECK-ASM: nds.vfwcvt.f.b.v v8, v10
# CHECK-ASM: encoding: [0x5b,0x44,0xa3,0x02]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.b.v v8, v10
# CHECK-OBJ: nds.vfwcvt.f.b.v v8, v10, v0.t
# CHECK-ASM: nds.vfwcvt.f.b.v v8, v10, v0.t
# CHECK-ASM: encoding: [0x5b,0x44,0xa3,0x00]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.b.v v8, v10, v0.t
# CHECK-OBJ: nds.vfwcvt.f.bu.v v8, v10
# CHECK-ASM: nds.vfwcvt.f.bu.v v8, v10
# CHECK-ASM: encoding: [0x5b,0xc4,0xa3,0x02]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.bu.v v8, v10
# CHECK-OBJ: nds.vfwcvt.f.bu.v v8, v10, v0.t
# CHECK-ASM: nds.vfwcvt.f.bu.v v8, v10, v0.t
# CHECK-ASM: encoding: [0x5b,0xc4,0xa3,0x00]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vfwcvt.f.bu.v v8, v10, v0.t
# CHECK-OBJ: nds.vle4.v v8, (a0)
# CHECK-ASM: nds.vle4.v v8, (a0)
# CHECK-ASM: encoding: [0x5b,0x44,0x05,0x06]
# CHECK-ERROR: instruction requires the following: 'XAndesVSIntH' (Andes Vector Small INT Handling Extension){{$}}
nds.vle4.v v8, (a0)