forked from OSchip/llvm-project
[DAG][X86] Add isNegatibleForFree/GetNegatedExpression override placeholders. NFCI.
Continuing to undo the rL372756 reversion. Differential Revision: https://reviews.llvm.org/D67557 llvm-svn: 374345
This commit is contained in:
parent
55f1be0996
commit
08c2f530ec
|
@ -41380,6 +41380,22 @@ static SDValue combineFneg(SDNode *N, SelectionDAG &DAG,
|
|||
return SDValue();
|
||||
}
|
||||
|
||||
char X86TargetLowering::isNegatibleForFree(SDValue Op, SelectionDAG &DAG,
|
||||
bool LegalOperations,
|
||||
bool ForCodeSize,
|
||||
unsigned Depth) const {
|
||||
return TargetLowering::isNegatibleForFree(Op, DAG, LegalOperations,
|
||||
ForCodeSize, Depth);
|
||||
}
|
||||
|
||||
SDValue X86TargetLowering::getNegatedExpression(SDValue Op, SelectionDAG &DAG,
|
||||
bool LegalOperations,
|
||||
bool ForCodeSize,
|
||||
unsigned Depth) const {
|
||||
return TargetLowering::getNegatedExpression(Op, DAG, LegalOperations,
|
||||
ForCodeSize, Depth);
|
||||
}
|
||||
|
||||
static SDValue lowerX86FPLogicOp(SDNode *N, SelectionDAG &DAG,
|
||||
const X86Subtarget &Subtarget) {
|
||||
MVT VT = N->getSimpleValueType(0);
|
||||
|
|
|
@ -802,6 +802,17 @@ namespace llvm {
|
|||
/// and some i16 instructions are slow.
|
||||
bool IsDesirableToPromoteOp(SDValue Op, EVT &PVT) const override;
|
||||
|
||||
/// Return 1 if we can compute the negated form of the specified expression
|
||||
/// for the same cost as the expression itself, or 2 if we can compute the
|
||||
/// negated form more cheaply than the expression itself. Else return 0.
|
||||
char isNegatibleForFree(SDValue Op, SelectionDAG &DAG, bool LegalOperations,
|
||||
bool ForCodeSize, unsigned Depth) const override;
|
||||
|
||||
/// If isNegatibleForFree returns true, return the newly negated expression.
|
||||
SDValue getNegatedExpression(SDValue Op, SelectionDAG &DAG,
|
||||
bool LegalOperations, bool ForCodeSize,
|
||||
unsigned Depth) const override;
|
||||
|
||||
MachineBasicBlock *
|
||||
EmitInstrWithCustomInserter(MachineInstr &MI,
|
||||
MachineBasicBlock *MBB) const override;
|
||||
|
|
Loading…
Reference in New Issue