mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-23 14:25:07 +00:00
these cases are autogenerated
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25238 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -973,34 +973,6 @@ SDOperand PPCDAGToDAGISel::Select(SDOperand Op) {
|
|||||||
// Other cases are autogenerated.
|
// Other cases are autogenerated.
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case ISD::FNEG: {
|
|
||||||
SDOperand Val = Select(N->getOperand(0));
|
|
||||||
MVT::ValueType Ty = N->getValueType(0);
|
|
||||||
if (N->getOperand(0).Val->hasOneUse()) {
|
|
||||||
unsigned Opc;
|
|
||||||
switch (Val.isTargetOpcode() ? Val.getTargetOpcode() : 0) {
|
|
||||||
default: Opc = 0; break;
|
|
||||||
case PPC::FABSS: Opc = PPC::FNABSS; break;
|
|
||||||
case PPC::FABSD: Opc = PPC::FNABSD; break;
|
|
||||||
case PPC::FMADD: Opc = PPC::FNMADD; break;
|
|
||||||
case PPC::FMADDS: Opc = PPC::FNMADDS; break;
|
|
||||||
case PPC::FMSUB: Opc = PPC::FNMSUB; break;
|
|
||||||
case PPC::FMSUBS: Opc = PPC::FNMSUBS; break;
|
|
||||||
}
|
|
||||||
// If we inverted the opcode, then emit the new instruction with the
|
|
||||||
// inverted opcode and the original instruction's operands. Otherwise,
|
|
||||||
// fall through and generate a fneg instruction.
|
|
||||||
if (Opc) {
|
|
||||||
if (Opc == PPC::FNABSS || Opc == PPC::FNABSD)
|
|
||||||
return CurDAG->SelectNodeTo(N, Opc, Ty, Val.getOperand(0));
|
|
||||||
else
|
|
||||||
return CurDAG->SelectNodeTo(N, Opc, Ty, Val.getOperand(0),
|
|
||||||
Val.getOperand(1), Val.getOperand(2));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Other cases are autogenerated.
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case ISD::SELECT_CC: {
|
case ISD::SELECT_CC: {
|
||||||
ISD::CondCode CC = cast<CondCodeSDNode>(N->getOperand(4))->get();
|
ISD::CondCode CC = cast<CondCodeSDNode>(N->getOperand(4))->get();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user