2018-01-23 18:09:39 +08:00
|
|
|
# RUN: llvm-mc --disassemble -arch=mipsel -mcpu=mips32r3 -mattr=+fp64 %s | \
|
|
|
|
# RUN: FileCheck %s
|
|
|
|
|
|
|
|
0x04 0x60 0x00 0x46 # CHECK: sqrt.s $f0, $f12
|
|
|
|
0x05 0x60 0x00 0x46 # CHECK: abs.s $f0, $f12
|
|
|
|
0x04 0x60 0x20 0x46 # CHECK: sqrt.d $f0, $f12
|
|
|
|
0x05 0x60 0x20 0x46 # CHECK: abs.d $f0, $f12
|
[mips] Define certain instructions in microMIPS32r3
Instructions affected:
mthc1, mfhc1, add.d, sub.d, mul.d, div.d,
mov.d, neg.d, cvt.w.d, cvt.d.s, cvt.d.w, cvt.s.d
These instructions are now defined for
microMIPS32r3 + microMIPS32r6 in MicroMipsInstrFPU.td
since they shared their encoding with those already defined
in microMIPS32r6InstrInfo.td and have been therefore
removed from the latter file.
Some instructions present in MicroMipsInstrFPU.td which
did not have both AFGR64 and FGR64 variants defined have
been altered to do so.
Differential revision: https://reviews.llvm.org/D42738
llvm-svn: 324584
2018-02-08 17:25:17 +08:00
|
|
|
0x00 0x10 0x24 0x46 # CHECK: add.d $f0, $f2, $f4
|
|
|
|
0x01 0x10 0x24 0x46 # CHECK: sub.d $f0, $f2, $f4
|
|
|
|
0x02 0x10 0x24 0x46 # CHECK: mul.d $f0, $f2, $f4
|
|
|
|
0x03 0x10 0x24 0x46 # CHECK: div.d $f0, $f2, $f4
|
|
|
|
0x06 0x10 0x20 0x46 # CHECK: mov.d $f0, $f2
|
|
|
|
0x07 0x10 0x20 0x46 # CHECK: neg.d $f0, $f2
|
|
|
|
0x24 0x10 0x20 0x46 # CHECK: cvt.w.d $f0, $f2
|
|
|
|
0x21 0x10 0x00 0x46 # CHECK: cvt.d.s $f0, $f2
|
|
|
|
0x21 0x10 0x80 0x46 # CHECK: cvt.d.w $f0, $f2
|
|
|
|
0x20 0x10 0x20 0x46 # CHECK: cvt.s.d $f0, $f2
|
2018-08-29 19:35:03 +08:00
|
|
|
0x21 0x81 0xa0 0x46 # CHECK: cvt.d.l $f4, $f16
|
|
|
|
0xe0 0xf3 0xa0 0x46 # CHECK: cvt.s.l $f15, $f30
|
|
|
|
0xa0 0xd3 0xc0 0x46 # CHECK: cvt.s.pu $f14, $f26
|
|
|
|
0xa6 0x90 0x14 0x46 # CHECK: cvt.ps.s $f2, $f18, $f20
|
|
|
|
0xa8 0x17 0xc0 0x46 # CHECK: cvt.s.pl $f30, $f2
|
|
|
|
0x2c 0x46 0xde 0x46 # CHECK: pll.ps $f24, $f8, $f30
|
|
|
|
0x2d 0xd0 0xdc 0x46 # CHECK: plu.ps $f0, $f26, $f28
|
[mips] Define certain instructions in microMIPS32r3
Instructions affected:
mthc1, mfhc1, add.d, sub.d, mul.d, div.d,
mov.d, neg.d, cvt.w.d, cvt.d.s, cvt.d.w, cvt.s.d
These instructions are now defined for
microMIPS32r3 + microMIPS32r6 in MicroMipsInstrFPU.td
since they shared their encoding with those already defined
in microMIPS32r6InstrInfo.td and have been therefore
removed from the latter file.
Some instructions present in MicroMipsInstrFPU.td which
did not have both AFGR64 and FGR64 variants defined have
been altered to do so.
Differential revision: https://reviews.llvm.org/D42738
llvm-svn: 324584
2018-02-08 17:25:17 +08:00
|
|
|
0x00 0x00 0xe4 0x44 # CHECK: mthc1 $4, $f0
|
|
|
|
0x00 0x00 0x64 0x44 # CHECK: mfhc1 $4, $f0
|
2020-11-05 21:30:45 +08:00
|
|
|
0x00 0x71 0xda 0x46 # CHECK: add.ps $f4, $f14, $f26
|
|
|
|
0x02 0x71 0xda 0x46 # CHECK: mul.ps $f4, $f14, $f26
|
|
|
|
0x01 0x71 0xda 0x46 # CHECK: sub.ps $f4, $f14, $f26
|