mirror of
https://github.com/RPCS3/llvm.git
synced 2025-01-11 06:56:12 +00:00
Add VCVTR (between floating-point and integer, VFP) for disassembly purpose.
The 'R' suffix means the to-integer operations use the rounding mode specified by the FPSCR, encoded as Inst{7} = 0. A8.6.295 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95584 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
618f17702d
commit
15b423f772
@ -363,6 +363,37 @@ def VTOUIZS : AVConv1In<0b11101, 0b11, 0b1100, 0b1010,
|
||||
let Inst{7} = 1; // Z bit
|
||||
}
|
||||
|
||||
// And the Z bit '0' variants, i.e. use the rounding mode specified by FPSCR.
|
||||
// For disassembly only.
|
||||
|
||||
def VTOSIRD : AVConv1I<0b11101, 0b11, 0b1101, 0b1011,
|
||||
(outs SPR:$dst), (ins DPR:$a),
|
||||
IIC_fpCVTDI, "vcvtr", ".s32.f64\t$dst, $a",
|
||||
[/* For disassembly only; pattern left blank */]> {
|
||||
let Inst{7} = 0; // Z bit
|
||||
}
|
||||
|
||||
def VTOSIRS : AVConv1In<0b11101, 0b11, 0b1101, 0b1010,
|
||||
(outs SPR:$dst), (ins SPR:$a),
|
||||
IIC_fpCVTSI, "vcvtr", ".s32.f32\t$dst, $a",
|
||||
[/* For disassembly only; pattern left blank */]> {
|
||||
let Inst{7} = 0; // Z bit
|
||||
}
|
||||
|
||||
def VTOUIRD : AVConv1I<0b11101, 0b11, 0b1100, 0b1011,
|
||||
(outs SPR:$dst), (ins DPR:$a),
|
||||
IIC_fpCVTDI, "vcvtr", ".u32.f64\t$dst, $a",
|
||||
[/* For disassembly only; pattern left blank */]> {
|
||||
let Inst{7} = 0; // Z bit
|
||||
}
|
||||
|
||||
def VTOUIRS : AVConv1In<0b11101, 0b11, 0b1100, 0b1010,
|
||||
(outs SPR:$dst), (ins SPR:$a),
|
||||
IIC_fpCVTSI, "vcvtr", ".u32.f32\t$dst, $a",
|
||||
[/* For disassembly only; pattern left blank */]> {
|
||||
let Inst{7} = 0; // Z bit
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// FP FMA Operations.
|
||||
//
|
||||
|
Loading…
x
Reference in New Issue
Block a user