diff options
| author | Misha Brukman <brukman+llvm@gmail.com> | 2004-07-26 16:28:33 +0000 | 
|---|---|---|
| committer | Misha Brukman <brukman+llvm@gmail.com> | 2004-07-26 16:28:33 +0000 | 
| commit | ed664f91a46ae1a77403d72cf3b0156973d5e46a (patch) | |
| tree | 9943d0a9e59a9d1a317929b3099fdc06e6f58e03 /llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp | |
| parent | d815472ebd31248a8bf25db95403d44a4ef4dc72 (diff) | |
| download | bcm5719-llvm-ed664f91a46ae1a77403d72cf3b0156973d5e46a.tar.gz bcm5719-llvm-ed664f91a46ae1a77403d72cf3b0156973d5e46a.zip | |
Increment the label number in runOnFunction() rather than while printing out
some instruction.  Patch by Nate Begeman.
llvm-svn: 15236
Diffstat (limited to 'llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp')
| -rw-r--r-- | llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp | 21 | 
1 files changed, 10 insertions, 11 deletions
| diff --git a/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp index b0dcf272dd0..5412e0faac0 100644 --- a/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp +++ b/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp @@ -56,8 +56,8 @@ namespace {      std::set<std::string> FnStubs, GVStubs, LinkOnceStubs;      std::set<std::string> Strings; -    Printer(std::ostream &o, TargetMachine &tm) : O(o),  -      TM(reinterpret_cast<PowerPCTargetMachine&>(tm)), labelNumber(0) { } +    Printer(std::ostream &o, TargetMachine &tm) : O(o), +      TM(reinterpret_cast<PowerPCTargetMachine&>(tm)), LabelNumber(0) {}      /// Cache of mangled name for current function. This is      /// recalculated at the beginning of each call to @@ -65,11 +65,10 @@ namespace {      ///      std::string CurrentFnName; -    /// Unique incrementer for label values for referencing -    /// Global values. +    /// Unique incrementer for label values for referencing Global values.      /// -    unsigned int labelNumber; - +    unsigned LabelNumber; +        virtual const char *getPassName() const {        return "PowerPC Assembly Printer";      } @@ -396,6 +395,7 @@ bool Printer::runOnMachineFunction(MachineFunction &MF) {        printMachineInstruction(II);      }    } +  ++LabelNumber;    // We didn't modify anything.    return false; @@ -526,8 +526,8 @@ void Printer::printMachineInstruction(const MachineInstr *MI) {      return;    } else if (Opcode == PPC32::MovePCtoLR) {      // FIXME: should probably be converted to cout.width and cout.fill -    O << "bl \"L0000" << labelNumber << "$pb\"\n"; -    O << "\"L0000" << labelNumber << "$pb\":\n"; +    O << "bl \"L0000" << LabelNumber << "$pb\"\n"; +    O << "\"L0000" << LabelNumber << "$pb\":\n";      O << "\tmflr ";      printOp(MI->getOperand(0));      O << "\n"; @@ -539,8 +539,7 @@ void Printer::printMachineInstruction(const MachineInstr *MI) {      printOp(MI->getOperand(0));      O << ", lo16(";      printOp(MI->getOperand(2)); -    O << "-\"L0000" << labelNumber << "$pb\")"; -    labelNumber++; +    O << "-\"L0000" << LabelNumber << "$pb\")";      O << "(";      if (MI->getOperand(1).getReg() == PPC32::R0)        O << "0"; @@ -556,7 +555,7 @@ void Printer::printMachineInstruction(const MachineInstr *MI) {        printOp(MI->getOperand(1));      O << ", ha16(" ;      printOp(MI->getOperand(2)); -     O << "-\"L0000" << labelNumber << "$pb\")\n"; +     O << "-\"L0000" << LabelNumber << "$pb\")\n";    } else if (ArgCount == 3 && ArgType[1] == PPC32II::Disimm16) {      printOp(MI->getOperand(0));      O << ", "; | 

