diff options
Diffstat (limited to 'lib/Target/SparcV9')
-rw-r--r-- | lib/Target/SparcV9/EmitBytecodeToAssembly.cpp | 2 | ||||
-rw-r--r-- | lib/Target/SparcV9/InstrSched/InstrScheduling.cpp | 2 | ||||
-rw-r--r-- | lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp | 2 | ||||
-rw-r--r-- | lib/Target/SparcV9/SparcV9AsmPrinter.cpp | 6 | ||||
-rw-r--r-- | lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp | 3 | ||||
-rw-r--r-- | lib/Target/SparcV9/SparcV9TargetMachine.cpp | 9 |
6 files changed, 24 insertions, 0 deletions
diff --git a/lib/Target/SparcV9/EmitBytecodeToAssembly.cpp b/lib/Target/SparcV9/EmitBytecodeToAssembly.cpp index 92420f9..fdf8f3e 100644 --- a/lib/Target/SparcV9/EmitBytecodeToAssembly.cpp +++ b/lib/Target/SparcV9/EmitBytecodeToAssembly.cpp @@ -59,6 +59,8 @@ namespace { public: SparcBytecodeWriter(std::ostream &out) : Out(out) {} + const char *getPassName() const { return "Emit Bytecode to Sparc Assembly";} + virtual bool run(Module *M) { // Write bytecode out to the sparc assembly stream Out << "\n\n!LLVM BYTECODE OUTPUT\n\t.section \".rodata\"\n\t.align 8\n"; diff --git a/lib/Target/SparcV9/InstrSched/InstrScheduling.cpp b/lib/Target/SparcV9/InstrSched/InstrScheduling.cpp index 4c2a28c..b042279 100644 --- a/lib/Target/SparcV9/InstrSched/InstrScheduling.cpp +++ b/lib/Target/SparcV9/InstrSched/InstrScheduling.cpp @@ -1484,6 +1484,8 @@ namespace { const TargetMachine ⌖ public: inline InstructionSchedulingWithSSA(const TargetMachine &T) : target(T) {} + + const char *getPassName() const { return "Instruction Scheduling"; } // getAnalysisUsage - We use LiveVarInfo... virtual void getAnalysisUsage(AnalysisUsage &AU) const { diff --git a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp index 4ad98d9..b783255 100644 --- a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp +++ b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp @@ -44,6 +44,8 @@ namespace { TargetMachine &Target; public: inline RegisterAllocator(TargetMachine &T) : Target(T) {} + + const char *getPassName() const { return "Register Allocation"; } bool runOnFunction(Function *F) { if (DEBUG_RA) diff --git a/lib/Target/SparcV9/SparcV9AsmPrinter.cpp b/lib/Target/SparcV9/SparcV9AsmPrinter.cpp index f4ca22f..8d87bfe 100644 --- a/lib/Target/SparcV9/SparcV9AsmPrinter.cpp +++ b/lib/Target/SparcV9/SparcV9AsmPrinter.cpp @@ -192,6 +192,10 @@ struct SparcFunctionAsmPrinter : public FunctionPass, public AsmPrinter { inline SparcFunctionAsmPrinter(std::ostream &os, const TargetMachine &t) : AsmPrinter(os, t) {} + const char *getPassName() const { + return "Output Sparc Assembly for Functions"; + } + virtual bool doInitialization(Module *M) { startModule(M); return false; @@ -424,6 +428,8 @@ public: SparcModuleAsmPrinter(std::ostream &os, TargetMachine &t) : AsmPrinter(os, t) {} + const char *getPassName() const { return "Output Sparc Assembly for Module"; } + virtual bool run(Module *M) { startModule(M); emitGlobalsAndConstants(M); diff --git a/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp b/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp index 17cd73b..b42e777 100644 --- a/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp +++ b/lib/Target/SparcV9/SparcV9PrologEpilogInserter.cpp @@ -25,6 +25,9 @@ class InsertPrologEpilogCode : public FunctionPass { TargetMachine &Target; public: InsertPrologEpilogCode(TargetMachine &T) : Target(T) {} + + const char *getPassName() const { return "Sparc Prolog/Epilog Inserter"; } + bool runOnFunction(Function *F) { MachineCodeForMethod &mcodeInfo = MachineCodeForMethod::get(F); if (!mcodeInfo.isCompiledAsLeafMethod()) { 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 @@ class ConstructMachineCodeForFunction : public FunctionPass { 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 @@ class InstructionSelection : public FunctionPass { 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 @@ public: }; struct FreeMachineCodeForFunction : public FunctionPass { + const char *getPassName() const { return "Sparc FreeMachineCodeForFunction"; } + static void freeMachineCode(Instruction *I) { MachineCodeForInstruction::destroy(I); } |