diff options
| author | Stefan Maksimovic <stefan.maksimovic@imgtec.com> | 2017-07-20 13:08:18 +0000 |
|---|---|---|
| committer | Stefan Maksimovic <stefan.maksimovic@imgtec.com> | 2017-07-20 13:08:18 +0000 |
| commit | be0bc71e023455a32d074b69054b6ffee6f1160e (patch) | |
| tree | b87546838453a1351a85ebf69d3462680b523a55 /llvm/lib/Target/Mips/MipsISelLowering.cpp | |
| parent | b6485252aac5d673762ab31204b6f0d97c6a3cb6 (diff) | |
| download | bcm5719-llvm-be0bc71e023455a32d074b69054b6ffee6f1160e.tar.gz bcm5719-llvm-be0bc71e023455a32d074b69054b6ffee6f1160e.zip | |
Reland r308585
Builder clang-x86_64-linux-abi-test apparently failed due
to a spurious error unrelated to the changes r308585
introduced.
llvm-svn: 308612
Diffstat (limited to 'llvm/lib/Target/Mips/MipsISelLowering.cpp')
| -rw-r--r-- | llvm/lib/Target/Mips/MipsISelLowering.cpp | 31 |
1 files changed, 2 insertions, 29 deletions
diff --git a/llvm/lib/Target/Mips/MipsISelLowering.cpp b/llvm/lib/Target/Mips/MipsISelLowering.cpp index dd41fefb55f..8e66a59c718 100644 --- a/llvm/lib/Target/Mips/MipsISelLowering.cpp +++ b/llvm/lib/Target/Mips/MipsISelLowering.cpp @@ -166,6 +166,8 @@ const char *MipsTargetLowering::getTargetNodeName(unsigned Opcode) const { case MipsISD::EH_RETURN: return "MipsISD::EH_RETURN"; case MipsISD::FPBrcond: return "MipsISD::FPBrcond"; case MipsISD::FPCmp: return "MipsISD::FPCmp"; + case MipsISD::FSELECT: return "MipsISD::FSELECT"; + case MipsISD::MTC1_D64: return "MipsISD::MTC1_D64"; case MipsISD::CMovFP_T: return "MipsISD::CMovFP_T"; case MipsISD::CMovFP_F: return "MipsISD::CMovFP_F"; case MipsISD::TruncIntFP: return "MipsISD::TruncIntFP"; @@ -1398,9 +1400,6 @@ MipsTargetLowering::EmitInstrWithCustomInserter(MachineInstr &MI, case Mips::DMOD_MM64R6: case Mips::DMODU_MM64R6: return insertDivByZeroTrap(MI, *BB, *Subtarget.getInstrInfo(), true, true); - case Mips::SEL_D: - case Mips::SEL_D_MMR6: - return emitSEL_D(MI, BB); case Mips::PseudoSELECT_I: case Mips::PseudoSELECT_I64: @@ -1960,32 +1959,6 @@ MachineBasicBlock *MipsTargetLowering::emitAtomicCmpSwapPartword( return exitMBB; } -MachineBasicBlock *MipsTargetLowering::emitSEL_D(MachineInstr &MI, - MachineBasicBlock *BB) const { - MachineFunction *MF = BB->getParent(); - const TargetRegisterInfo *TRI = Subtarget.getRegisterInfo(); - const TargetInstrInfo *TII = Subtarget.getInstrInfo(); - MachineRegisterInfo &RegInfo = MF->getRegInfo(); - DebugLoc DL = MI.getDebugLoc(); - MachineBasicBlock::iterator II(MI); - - unsigned Fc = MI.getOperand(1).getReg(); - const auto &FGR64RegClass = TRI->getRegClass(Mips::FGR64RegClassID); - - unsigned Fc2 = RegInfo.createVirtualRegister(FGR64RegClass); - - BuildMI(*BB, II, DL, TII->get(Mips::SUBREG_TO_REG), Fc2) - .addImm(0) - .addReg(Fc) - .addImm(Mips::sub_lo); - - // We don't erase the original instruction, we just replace the condition - // register with the 64-bit super-register. - MI.getOperand(1).setReg(Fc2); - - return BB; -} - SDValue MipsTargetLowering::lowerBRCOND(SDValue Op, SelectionDAG &DAG) const { // The first operand is the chain, the second is the condition, the third is // the block to branch to if the condition is true. |

