mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-26 14:15:53 +00:00
Added predicate !NoExcessFPPrecision to FMADD, FMADDS, FMSUB, and FMSUBS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24716 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
58e84a69f5
commit
8c75ef9228
@ -166,6 +166,9 @@ def crbitm: Operand<i8> {
|
||||
let PrintMethod = "printcrbitm";
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// PowerPC Instruction Predicate Definitions.
|
||||
def FPContractions : Predicate<"!NoExcessFPPrecision">;
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// PowerPC Instruction Definitions.
|
||||
@ -719,22 +722,26 @@ def FMADD : AForm_1<63, 29,
|
||||
(ops F8RC:$FRT, F8RC:$FRA, F8RC:$FRC, F8RC:$FRB),
|
||||
"fmadd $FRT, $FRA, $FRC, $FRB", FPFused,
|
||||
[(set F8RC:$FRT, (fadd (fmul F8RC:$FRA, F8RC:$FRC),
|
||||
F8RC:$FRB))]>;
|
||||
F8RC:$FRB))]>,
|
||||
Requires<[FPContractions]>;
|
||||
def FMADDS : AForm_1<59, 29,
|
||||
(ops F4RC:$FRT, F4RC:$FRA, F4RC:$FRC, F4RC:$FRB),
|
||||
"fmadds $FRT, $FRA, $FRC, $FRB", FPGeneral,
|
||||
[(set F4RC:$FRT, (fadd (fmul F4RC:$FRA, F4RC:$FRC),
|
||||
F4RC:$FRB))]>;
|
||||
F4RC:$FRB))]>,
|
||||
Requires<[FPContractions]>;
|
||||
def FMSUB : AForm_1<63, 28,
|
||||
(ops F8RC:$FRT, F8RC:$FRA, F8RC:$FRC, F8RC:$FRB),
|
||||
"fmsub $FRT, $FRA, $FRC, $FRB", FPFused,
|
||||
[(set F8RC:$FRT, (fsub (fmul F8RC:$FRA, F8RC:$FRC),
|
||||
F8RC:$FRB))]>;
|
||||
F8RC:$FRB))]>,
|
||||
Requires<[FPContractions]>;
|
||||
def FMSUBS : AForm_1<59, 28,
|
||||
(ops F4RC:$FRT, F4RC:$FRA, F4RC:$FRC, F4RC:$FRB),
|
||||
"fmsubs $FRT, $FRA, $FRC, $FRB", FPGeneral,
|
||||
[(set F4RC:$FRT, (fsub (fmul F4RC:$FRA, F4RC:$FRC),
|
||||
F4RC:$FRB))]>;
|
||||
F4RC:$FRB))]>,
|
||||
Requires<[FPContractions]>;
|
||||
def FNMADD : AForm_1<63, 31,
|
||||
(ops F8RC:$FRT, F8RC:$FRA, F8RC:$FRC, F8RC:$FRB),
|
||||
"fnmadd $FRT, $FRA, $FRC, $FRB", FPFused,
|
||||
|
Loading…
Reference in New Issue
Block a user