Add new optional getPassName() virtual function that a Pass can override
to make debugging output a lot nicer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2395 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/SparcV9/SparcV9TargetMachine.cpp b/lib/Target/SparcV9/SparcV9TargetMachine.cpp
index 306b85a..fecdf23 100644
--- a/lib/Target/SparcV9/SparcV9TargetMachine.cpp
+++ b/lib/Target/SparcV9/SparcV9TargetMachine.cpp
@@ -130,6 +130,11 @@
   TargetMachine &Target;
 public:
   inline ConstructMachineCodeForFunction(TargetMachine &T) : Target(T) {}
+
+  const char *getPassName() const {
+    return "Sparc ConstructMachineCodeForFunction";
+  }
+
   bool runOnFunction(Function *F) {
     MachineCodeForMethod::construct(F, Target);
     return false;
@@ -140,6 +145,8 @@
   TargetMachine &Target;
 public:
   inline InstructionSelection(TargetMachine &T) : Target(T) {}
+  const char *getPassName() const { return "Sparc Instruction Selection"; }
+
   bool runOnFunction(Function *F) {
     if (SelectInstructionsForMethod(F, Target)) {
       cerr << "Instr selection failed for function " << F->getName() << "\n";
@@ -150,6 +157,8 @@
 };
 
 struct FreeMachineCodeForFunction : public FunctionPass {
+  const char *getPassName() const { return "Sparc FreeMachineCodeForFunction"; }
+
   static void freeMachineCode(Instruction *I) {
     MachineCodeForInstruction::destroy(I);
   }