1192 lines
43 KiB
ArmAsm
1192 lines
43 KiB
ArmAsm
## Test out of range immediates which are used by lsx instructions.
|
|
|
|
# RUN: not llvm-mc --triple=loongarch64 %s 2>&1 | FileCheck %s
|
|
|
|
## uimm1
|
|
vstelm.d $vr0, $a0, 8, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vstelm.d $vr0, $a0, 8, 2
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vreplvei.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vreplvei.d $vr0, $vr1, 2
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vpickve2gr.du $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vpickve2gr.du $a0, $vr1, 2
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vpickve2gr.d $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vpickve2gr.d $a0, $vr1, 2
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vinsgr2vr.d $vr0, $a0, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 1]
|
|
|
|
vinsgr2vr.d $vr0, $a0, 2
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 1]
|
|
|
|
## uimm2
|
|
vstelm.w $vr0, $a0, 4, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vstelm.w $vr0, $a0, 4, 4
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vreplvei.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vreplvei.w $vr0, $vr1, 4
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vpickve2gr.wu $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vpickve2gr.wu $a0, $vr1, 4
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vpickve2gr.w $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vpickve2gr.w $a0, $vr1, 4
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vinsgr2vr.w $vr0, $a0, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 3]
|
|
|
|
vinsgr2vr.w $vr0, $a0, 4
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 3]
|
|
|
|
## uimm3
|
|
vstelm.h $vr0, $a0, 2, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vstelm.h $vr0, $a0, 2, 8
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vreplvei.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vreplvei.h $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vpickve2gr.hu $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vpickve2gr.hu $a0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vpickve2gr.h $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vpickve2gr.h $a0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vinsgr2vr.h $vr0, $a0, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vinsgr2vr.h $vr0, $a0, 8
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vbitrevi.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vbitrevi.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vbitseti.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vbitseti.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vbitclri.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vbitclri.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrari.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrari.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrlri.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrlri.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsllwil.hu.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsllwil.hu.bu $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsllwil.h.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsllwil.h.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vrotri.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vrotri.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrai.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrai.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrli.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsrli.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vslli.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vslli.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsat.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsat.b $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsat.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
vsat.bu $vr0, $vr1, 8
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 7]
|
|
|
|
## uimm4
|
|
vstelm.b $vr0, $a0, 1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vstelm.b $vr0, $a0, 1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vreplvei.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vreplvei.b $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vpickve2gr.bu $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vpickve2gr.bu $a0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vpickve2gr.b $a0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vpickve2gr.b $a0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vinsgr2vr.b $vr0, $a0, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vinsgr2vr.b $vr0, $a0, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vbitrevi.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vbitrevi.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vbitseti.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vbitseti.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vbitclri.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vbitclri.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrarni.bu.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrarni.bu.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlrni.bu.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlrni.bu.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrarni.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrarni.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlrni.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlrni.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrani.bu.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrani.bu.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlni.bu.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlni.bu.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrani.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrani.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlni.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vssrlni.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrarni.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrarni.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrlrni.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrlrni.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrani.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrani.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrlni.b.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrlni.b.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrari.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrari.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrlri.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrlri.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsllwil.wu.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsllwil.wu.hu $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsllwil.w.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsllwil.w.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vrotri.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vrotri.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrai.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrai.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrli.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsrli.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vslli.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vslli.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsat.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsat.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsat.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
vsat.hu $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 15]
|
|
|
|
## uimm5
|
|
vbsrl.v $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbsrl.v $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbsll.v $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbsll.v $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.du $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.hu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslti.bu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.du $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.hu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslei.bu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vfrstpi.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vfrstpi.h $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vfrstpi.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vfrstpi.b $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbitrevi.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbitrevi.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbitseti.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbitseti.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbitclri.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vbitclri.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrarni.hu.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrarni.hu.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlrni.hu.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlrni.hu.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrarni.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrarni.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlrni.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlrni.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrani.hu.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrani.hu.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlni.hu.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlni.hu.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrani.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrani.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlni.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vssrlni.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrarni.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrarni.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrlrni.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrlrni.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrani.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrani.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrlni.h.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrlni.h.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrari.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrari.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrlri.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrlri.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsllwil.du.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsllwil.du.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsllwil.d.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsllwil.d.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vrotri.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vrotri.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrai.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrai.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrli.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsrli.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslli.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vslli.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.bu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.hu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vaddi.du $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.bu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.hu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsubi.du $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.bu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.hu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmaxi.du $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.bu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.bu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.hu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.hu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vmini.du $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsat.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsat.w $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsat.wu $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
vsat.wu $vr0, $vr1, 32
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 31]
|
|
|
|
## simm5
|
|
vslti.d $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.d $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.w $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.w $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.h $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.b $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslti.b $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.d $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.d $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.w $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.w $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.h $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.b $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vslei.b $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.d $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.d $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.w $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.w $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.h $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.b $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vseqi.b $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.b $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.b $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.h $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.w $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.w $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.d $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmaxi.d $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.b $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.b $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.h $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.h $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.w $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.w $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.d $vr0, $vr1, -17
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
vmini.d $vr0, $vr1, 16
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-16, 15]
|
|
|
|
## uimm6
|
|
vbitrevi.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vbitrevi.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vbitseti.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vbitseti.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vbitclri.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vbitclri.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrarni.wu.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrarni.wu.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlrni.wu.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlrni.wu.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrarni.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrarni.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlrni.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlrni.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrani.wu.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrani.wu.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlni.wu.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlni.wu.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrani.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrani.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlni.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vssrlni.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrarni.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrarni.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrlrni.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrlrni.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrani.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrani.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrlni.w.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrlni.w.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrari.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrari.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrlri.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrlri.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vrotri.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vrotri.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrai.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrai.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrli.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsrli.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vslli.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vslli.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsat.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsat.d $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsat.du $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
vsat.du $vr0, $vr1, 64
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 63]
|
|
|
|
## uimm7
|
|
vssrarni.du.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrarni.du.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlrni.du.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlrni.du.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:27: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrarni.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrarni.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlrni.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlrni.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrani.du.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrani.du.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlni.du.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlni.du.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:26: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrani.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrani.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlni.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vssrlni.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrarni.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrarni.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrlrni.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrlrni.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:25: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrani.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrani.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrlni.d.q $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 127]
|
|
|
|
vsrlni.d.q $vr0, $vr1, 128
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 127]
|
|
|
|
## uimm8
|
|
vextrins.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.d $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.w $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.h $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vextrins.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vpermi.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vpermi.w $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.d $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.d $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.w $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.w $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.h $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.h $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vshuf4i.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:23: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vbitseli.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vbitseli.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:24: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vandi.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vandi.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vori.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vori.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:20: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vxori.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vxori.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vnori.b $vr0, $vr1, -1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 255]
|
|
|
|
vnori.b $vr0, $vr1, 256
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [0, 255]
|
|
|
|
## simm8
|
|
vstelm.b $vr0, $a0, -129, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-128, 127]
|
|
|
|
vstelm.b $vr0, $a0, 128, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be an integer in the range [-128, 127]
|
|
|
|
## simm8_lsl1
|
|
vstelm.h $vr0, $a0, -258, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be a multiple of 2 in the range [-256, 254]
|
|
|
|
vstelm.h $vr0, $a0, 256, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be a multiple of 2 in the range [-256, 254]
|
|
|
|
## simm8_lsl2
|
|
vstelm.w $vr0, $a0, -516, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be a multiple of 4 in the range [-512, 508]
|
|
|
|
vstelm.w $vr0, $a0, 512, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be a multiple of 4 in the range [-512, 508]
|
|
|
|
## simm8_lsl3
|
|
vstelm.d $vr0, $a0, -1032, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be a multiple of 8 in the range [-1024, 1016]
|
|
|
|
vstelm.d $vr0, $a0, 1024, 1
|
|
# CHECK: :[[#@LINE-1]]:21: error: immediate must be a multiple of 8 in the range [-1024, 1016]
|
|
|
|
## simm9_lsl3
|
|
vldrepl.d $vr0, $a0, -2056
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be a multiple of 8 in the range [-2048, 2040]
|
|
|
|
vldrepl.d $vr0, $a0, 2048
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be a multiple of 8 in the range [-2048, 2040]
|
|
|
|
## simm10_lsl2
|
|
vldrepl.w $vr0, $a0, -2052
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be a multiple of 4 in the range [-2048, 2044]
|
|
|
|
vldrepl.w $vr0, $a0, 2048
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be a multiple of 4 in the range [-2048, 2044]
|
|
|
|
## simm10
|
|
vrepli.b $vr0, -513
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.b $vr0, 512
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.h $vr0, -513
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.h $vr0, 512
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.w $vr0, -513
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.w $vr0, 512
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.d $vr0, -513
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
vrepli.d $vr0, 512
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-512, 511]
|
|
|
|
## simm11_lsl1
|
|
vldrepl.h $vr0, $a0, -2050
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be a multiple of 2 in the range [-2048, 2046]
|
|
|
|
vldrepl.h $vr0, $a0, 2048
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be a multiple of 2 in the range [-2048, 2046]
|
|
|
|
## simm12
|
|
vldrepl.b $vr0, $a0, -2049
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [-2048, 2047]
|
|
|
|
vldrepl.b $vr0, $a0, 2048
|
|
# CHECK: :[[#@LINE-1]]:22: error: immediate must be an integer in the range [-2048, 2047]
|
|
|
|
vst $vr0, $a0, -2049
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-2048, 2047]
|
|
|
|
vst $vr0, $a0, 2048
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-2048, 2047]
|
|
|
|
vld $vr0, $a0, -2049
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-2048, 2047]
|
|
|
|
vld $vr0, $a0, 2048
|
|
# CHECK: :[[#@LINE-1]]:16: error: immediate must be an integer in the range [-2048, 2047]
|
|
|
|
## simm13
|
|
vldi $vr0, -4097
|
|
# CHECK: :[[#@LINE-1]]:12: error: immediate must be an integer in the range [-4096, 4095]
|
|
|
|
vldi $vr0, 4096
|
|
# CHECK: :[[#@LINE-1]]:12: error: immediate must be an integer in the range [-4096, 4095]
|