From 1fe70c6ae12e85cdb5967ba6d72fca8a9e5c3ec3 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 17 May 2012 13:13:17 -0400 Subject: [PATCH] radeon/llvm: Expand fsub during ISel --- src/gallium/drivers/radeon/R600ISelLowering.cpp | 2 ++ src/gallium/drivers/radeon/R600LowerInstructions.cpp | 11 ----------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/src/gallium/drivers/radeon/R600ISelLowering.cpp b/src/gallium/drivers/radeon/R600ISelLowering.cpp index 4db40f799ed..1fffb99c601 100644 --- a/src/gallium/drivers/radeon/R600ISelLowering.cpp +++ b/src/gallium/drivers/radeon/R600ISelLowering.cpp @@ -34,6 +34,8 @@ R600TargetLowering::R600TargetLowering(TargetMachine &TM) : setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4f32, Legal); setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4i32, Legal); setOperationAction(ISD::INSERT_VECTOR_ELT, MVT::v4i32, Legal); + + setOperationAction(ISD::FSUB, MVT::f32, Expand); } MachineBasicBlock * R600TargetLowering::EmitInstrWithCustomInserter( diff --git a/src/gallium/drivers/radeon/R600LowerInstructions.cpp b/src/gallium/drivers/radeon/R600LowerInstructions.cpp index 19c3aae1e61..a5f57cc1d36 100644 --- a/src/gallium/drivers/radeon/R600LowerInstructions.cpp +++ b/src/gallium/drivers/radeon/R600LowerInstructions.cpp @@ -303,17 +303,6 @@ bool R600LowerInstructionsPass::runOnMachineFunction(MachineFunction &MF) break; } - case AMDIL::SUB_f32: - { - MI.getOperand(2).addTargetFlag(MO_FLAG_NEG); - BuildMI(MBB, I, MBB.findDebugLoc(I), - TII->get(TII->getISAOpcode(AMDIL::ADD))) - .addOperand(MI.getOperand(0)) - .addOperand(MI.getOperand(1)) - .addOperand(MI.getOperand(2)); - break; - } - case AMDIL::ULT: BuildMI(MBB, I, MBB.findDebugLoc(I), TII->get(AMDIL::SETGT_UINT)) .addOperand(MI.getOperand(0)) -- 2.30.2