Changes in directory llvm/lib/Target/SparcV8:
FPMover.cpp updated: 1.10 -> 1.11 --- Log message: If the target has V9 instructions, this pass is a noop, don't bother running it. --- Diffs of the changes: (+16 -8) FPMover.cpp | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) Index: llvm/lib/Target/SparcV8/FPMover.cpp diff -u llvm/lib/Target/SparcV8/FPMover.cpp:1.10 llvm/lib/Target/SparcV8/FPMover.cpp:1.11 --- llvm/lib/Target/SparcV8/FPMover.cpp:1.10 Sun Jan 22 17:37:17 2006 +++ llvm/lib/Target/SparcV8/FPMover.cpp Sun Jan 29 23:51:14 2006 @@ -12,8 +12,10 @@ //===----------------------------------------------------------------------===// #include "SparcV8.h" +#include "SparcV8Subtarget.h" #include "llvm/CodeGen/MachineFunctionPass.h" #include "llvm/CodeGen/MachineInstrBuilder.h" +#include "llvm/Target/TargetMachine.h" #include "llvm/ADT/Statistic.h" #include "llvm/Support/Debug.h" #include <iostream> @@ -36,14 +38,7 @@ } bool runOnMachineBasicBlock(MachineBasicBlock &MBB); - bool runOnMachineFunction(MachineFunction &F) { - bool Changed = false; - for (MachineFunction::iterator FI = F.begin(), FE = F.end(); - FI != FE; ++FI) - Changed |= runOnMachineBasicBlock(*FI); - return Changed; - } - + bool runOnMachineFunction(MachineFunction &F); }; } // end of anonymous namespace @@ -122,3 +117,16 @@ } return Changed; } + +bool FPMover::runOnMachineFunction(MachineFunction &F) { + // If the target has V9 instructions, the fp-mover pseudos will never be + // emitted. Avoid a scan of the instructions to improve compile time. + if (TM.getSubtarget<SparcV8Subtarget>().isV9()) + return false; + + bool Changed = false; + for (MachineFunction::iterator FI = F.begin(), FE = F.end(); + FI != FE; ++FI) + Changed |= runOnMachineBasicBlock(*FI); + return Changed; +} _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits