mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
[X86][FMA] Add missing Predicates qualifier around scalar FMA intrinsic patterns.
llvm-svn: 288010
This commit is contained in:
parent
9440849602
commit
bf372031c2
@ -240,13 +240,15 @@ multiclass fma3s<bits<8> opc132, bits<8> opc213, bits<8> opc231,
|
||||
// This is because src1 is tied to dest, and the scalar intrinsics
|
||||
// require the pass-through values to come from the first source
|
||||
// operand, not the second.
|
||||
def : Pat<(IntF32 VR128:$src1, VR128:$src2, VR128:$src3),
|
||||
(COPY_TO_REGCLASS(!cast<Instruction>(NAME#"213SSr_Int")
|
||||
$src1, $src2, $src3), VR128)>;
|
||||
let Predicates = [HasFMA] in {
|
||||
def : Pat<(IntF32 VR128:$src1, VR128:$src2, VR128:$src3),
|
||||
(COPY_TO_REGCLASS(!cast<Instruction>(NAME#"213SSr_Int")
|
||||
$src1, $src2, $src3), VR128)>;
|
||||
|
||||
def : Pat<(IntF64 VR128:$src1, VR128:$src2, VR128:$src3),
|
||||
(COPY_TO_REGCLASS(!cast<Instruction>(NAME#"213SDr_Int")
|
||||
$src1, $src2, $src3), VR128)>;
|
||||
def : Pat<(IntF64 VR128:$src1, VR128:$src2, VR128:$src3),
|
||||
(COPY_TO_REGCLASS(!cast<Instruction>(NAME#"213SDr_Int")
|
||||
$src1, $src2, $src3), VR128)>;
|
||||
}
|
||||
}
|
||||
|
||||
defm VFMADD : fma3s<0x99, 0xA9, 0xB9, "vfmadd", int_x86_fma_vfmadd_ss,
|
||||
|
Loading…
Reference in New Issue
Block a user