166 lines · plain
1# RUN: llvm-mc -triple=riscv64 -show-encoding --mattr=+v %s \2# RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3# RUN: not llvm-mc -triple=riscv64 -show-encoding %s 2>&1 \4# RUN: | FileCheck %s --check-prefix=CHECK-ERROR5# RUN: llvm-mc -triple=riscv64 -filetype=obj --mattr=+v %s \6# RUN: | llvm-objdump -d --mattr=+v - \7# RUN: | FileCheck %s --check-prefix=CHECK-INST8# RUN: llvm-mc -triple=riscv64 -filetype=obj --mattr=+v %s \9# RUN: | llvm-objdump -d - | FileCheck %s --check-prefix=CHECK-UNKNOWN10 11vmand.mm v8, v4, v2012# CHECK-INST: vmand.mm v8, v4, v2013# CHECK-ENCODING: [0x57,0x24,0x4a,0x66]14# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}15# CHECK-UNKNOWN: 664a2457 <unknown>16 17vmnand.mm v8, v4, v2018# CHECK-INST: vmnand.mm v8, v4, v2019# CHECK-ENCODING: [0x57,0x24,0x4a,0x76]20# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}21# CHECK-UNKNOWN: 764a2457 <unknown>22 23vmandn.mm v8, v4, v2024# CHECK-INST: vmandn.mm v8, v4, v2025# CHECK-ENCODING: [0x57,0x24,0x4a,0x62]26# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}27# CHECK-UNKNOWN: 624a2457 <unknown>28 29vmxor.mm v8, v4, v2030# CHECK-INST: vmxor.mm v8, v4, v2031# CHECK-ENCODING: [0x57,0x24,0x4a,0x6e]32# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}33# CHECK-UNKNOWN: 6e4a2457 <unknown>34 35vmor.mm v8, v4, v2036# CHECK-INST: vmor.mm v8, v4, v2037# CHECK-ENCODING: [0x57,0x24,0x4a,0x6a]38# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}39# CHECK-UNKNOWN: 6a4a2457 <unknown>40 41vmnor.mm v8, v4, v2042# CHECK-INST: vmnor.mm v8, v4, v2043# CHECK-ENCODING: [0x57,0x24,0x4a,0x7a]44# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}45# CHECK-UNKNOWN: 7a4a2457 <unknown>46 47vmorn.mm v8, v4, v2048# CHECK-INST: vmorn.mm v8, v4, v2049# CHECK-ENCODING: [0x57,0x24,0x4a,0x72]50# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}51# CHECK-UNKNOWN: 724a2457 <unknown>52 53vmxnor.mm v8, v4, v2054# CHECK-INST: vmxnor.mm v8, v4, v2055# CHECK-ENCODING: [0x57,0x24,0x4a,0x7e]56# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}57# CHECK-UNKNOWN: 7e4a2457 <unknown>58 59vcpop.m a2, v4, v0.t60# CHECK-INST: vcpop.m a2, v4, v0.t61# CHECK-ENCODING: [0x57,0x26,0x48,0x40]62# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}63# CHECK-UNKNOWN: 40482657 <unknown>64 65vcpop.m a2, v466# CHECK-INST: vcpop.m a2, v467# CHECK-ENCODING: [0x57,0x26,0x48,0x42]68# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}69# CHECK-UNKNOWN: 42482657 <unknown>70 71vfirst.m a2, v4, v0.t72# CHECK-INST: vfirst.m a2, v4, v0.t73# CHECK-ENCODING: [0x57,0xa6,0x48,0x40]74# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}75# CHECK-UNKNOWN: 4048a657 <unknown>76 77vfirst.m a2, v478# CHECK-INST: vfirst.m a2, v479# CHECK-ENCODING: [0x57,0xa6,0x48,0x42]80# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}81# CHECK-UNKNOWN: 4248a657 <unknown>82 83vmsbf.m v8, v4, v0.t84# CHECK-INST: vmsbf.m v8, v4, v0.t85# CHECK-ENCODING: [0x57,0xa4,0x40,0x50]86# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}87# CHECK-UNKNOWN: 5040a457 <unknown>88 89vmsbf.m v8, v490# CHECK-INST: vmsbf.m v8, v491# CHECK-ENCODING: [0x57,0xa4,0x40,0x52]92# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}93# CHECK-UNKNOWN: 5240a457 <unknown>94 95vmsif.m v8, v4, v0.t96# CHECK-INST: vmsif.m v8, v4, v0.t97# CHECK-ENCODING: [0x57,0xa4,0x41,0x50]98# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}99# CHECK-UNKNOWN: 5041a457 <unknown>100 101vmsif.m v8, v4102# CHECK-INST: vmsif.m v8, v4103# CHECK-ENCODING: [0x57,0xa4,0x41,0x52]104# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}105# CHECK-UNKNOWN: 5241a457 <unknown>106 107vmsof.m v8, v4, v0.t108# CHECK-INST: vmsof.m v8, v4, v0.t109# CHECK-ENCODING: [0x57,0x24,0x41,0x50]110# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}111# CHECK-UNKNOWN: 50412457 <unknown>112 113vmsof.m v8, v4114# CHECK-INST: vmsof.m v8, v4115# CHECK-ENCODING: [0x57,0x24,0x41,0x52]116# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}117# CHECK-UNKNOWN: 52412457 <unknown>118 119viota.m v8, v4, v0.t120# CHECK-INST: viota.m v8, v4, v0.t121# CHECK-ENCODING: [0x57,0x24,0x48,0x50]122# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}123# CHECK-UNKNOWN: 50482457 <unknown>124 125viota.m v8, v4126# CHECK-INST: viota.m v8, v4127# CHECK-ENCODING: [0x57,0x24,0x48,0x52]128# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}129# CHECK-UNKNOWN: 52482457 <unknown>130 131vid.v v8, v0.t132# CHECK-INST: vid.v v8, v0.t133# CHECK-ENCODING: [0x57,0xa4,0x08,0x50]134# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}135# CHECK-UNKNOWN: 5008a457 <unknown>136 137vid.v v8138# CHECK-INST: vid.v v8139# CHECK-ENCODING: [0x57,0xa4,0x08,0x52]140# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}141# CHECK-UNKNOWN: 5208a457 <unknown>142 143vmmv.m v8, v4144# CHECK-INST: vmmv.m v8, v4145# CHECK-ENCODING: [0x57,0x24,0x42,0x66]146# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}147# CHECK-UNKNOWN: 66422457 <unknown>148 149vmclr.m v8150# CHECK-INST: vmclr.m v8151# CHECK-ENCODING: [0x57,0x24,0x84,0x6e]152# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}153# CHECK-UNKNOWN: 6e842457 <unknown>154 155vmset.m v8156# CHECK-INST: vmset.m v8157# CHECK-ENCODING: [0x57,0x24,0x84,0x7e]158# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}159# CHECK-UNKNOWN: 7e842457 <unknown>160 161vmnot.m v8, v4162# CHECK-INST: vmnot.m v8, v4163# CHECK-ENCODING: [0x57,0x24,0x42,0x76]164# CHECK-ERROR: instruction requires the following: 'V' (Vector Extension for Application Processors), 'Zve32x' (Vector Extensions for Embedded Processors){{$}}165# CHECK-UNKNOWN: 76422457 <unknown>166