@@ -16134,8 +16134,8 @@ SDValue DAGCombiner::visitFADDForFMACombine(SDNode *N) {
16134
16134
16135
16135
// Floating-point multiply-add without intermediate rounding.
16136
16136
bool HasFMA =
16137
- TLI.isFMAFasterThanFMulAndFAdd(DAG.getMachineFunction() , VT) &&
16138
- (!LegalOperations || matcher.isOperationLegalOrCustom(ISD::FMA , VT) );
16137
+ (!LegalOperations || matcher.isOperationLegalOrCustom(ISD::FMA , VT) ) &&
16138
+ TLI.isFMAFasterThanFMulAndFAdd(DAG.getMachineFunction() , VT);
16139
16139
16140
16140
// No valid opcode, do not combine.
16141
16141
if (!HasFMAD && !HasFMA)
@@ -16371,8 +16371,8 @@ SDValue DAGCombiner::visitFSUBForFMACombine(SDNode *N) {
16371
16371
16372
16372
// Floating-point multiply-add without intermediate rounding.
16373
16373
bool HasFMA =
16374
- TLI.isFMAFasterThanFMulAndFAdd(DAG.getMachineFunction() , VT) &&
16375
- (!LegalOperations || matcher.isOperationLegalOrCustom(ISD::FMA , VT) );
16374
+ (!LegalOperations || matcher.isOperationLegalOrCustom(ISD::FMA , VT) ) &&
16375
+ TLI.isFMAFasterThanFMulAndFAdd(DAG.getMachineFunction() , VT);
16376
16376
16377
16377
// No valid opcode, do not combine.
16378
16378
if (!HasFMAD && !HasFMA)
@@ -16702,8 +16702,8 @@ SDValue DAGCombiner::visitFMULForFMADistributiveCombine(SDNode *N) {
16702
16702
// Floating-point multiply-add without intermediate rounding.
16703
16703
bool HasFMA =
16704
16704
isContractableFMUL(Options, SDValue(N, 0)) &&
16705
- TLI.isFMAFasterThanFMulAndFAdd(DAG.getMachineFunction() , VT) &&
16706
- (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FMA , VT) );
16705
+ (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FMA , VT) ) &&
16706
+ TLI.isFMAFasterThanFMulAndFAdd(DAG.getMachineFunction() , VT);
16707
16707
16708
16708
// Floating-point multiply-add with intermediate rounding. This can result
16709
16709
// in a less precise result due to the changed rounding order.
0 commit comments