Changes in directory llvm/lib/Target/ARM:
ARMAsmPrinter.cpp updated: 1.14 -> 1.15 --- Log message: Separate target specific asm properties from the asm printers. --- Diffs of the changes: (+12 -4) ARMAsmPrinter.cpp | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-) Index: llvm/lib/Target/ARM/ARMAsmPrinter.cpp diff -u llvm/lib/Target/ARM/ARMAsmPrinter.cpp:1.14 llvm/lib/Target/ARM/ARMAsmPrinter.cpp:1.15 --- llvm/lib/Target/ARM/ARMAsmPrinter.cpp:1.14 Fri Aug 25 12:55:16 2006 +++ llvm/lib/Target/ARM/ARMAsmPrinter.cpp Wed Sep 6 13:34:40 2006 @@ -23,6 +23,7 @@ #include "llvm/CodeGen/MachineFunctionPass.h" #include "llvm/CodeGen/MachineConstantPool.h" #include "llvm/CodeGen/MachineInstr.h" +#include "llvm/Target/TargetAsmInfo.h" #include "llvm/Target/TargetData.h" #include "llvm/Target/TargetMachine.h" #include "llvm/Support/Mangler.h" @@ -37,8 +38,8 @@ namespace { Statistic<> EmittedInsts("asm-printer", "Number of machine instrs printed"); - struct ARMAsmPrinter : public AsmPrinter { - ARMAsmPrinter(std::ostream &O, TargetMachine &TM) : AsmPrinter(O, TM) { + struct VISIBILITY_HIDDEN ARMTargetAsmInfo : public TargetAsmInfo { + ARMTargetAsmInfo() { Data16bitsDirective = "\t.half\t"; Data32bitsDirective = "\t.word\t"; Data64bitsDirective = 0; @@ -47,6 +48,12 @@ ConstantPoolSection = "\t.text\n"; AlignmentIsInBytes = false; } + }; + + struct VISIBILITY_HIDDEN ARMAsmPrinter : public AsmPrinter { + ARMAsmPrinter(std::ostream &O, TargetMachine &TM, TargetAsmInfo *T) + : AsmPrinter(O, TM, T) { + } /// We name each basic block in a Function with a unique number, so /// that we can consistently refer to them later. This is cleared @@ -106,7 +113,8 @@ /// FunctionPass *llvm::createARMCodePrinterPass(std::ostream &o, TargetMachine &tm) { - return new ARMAsmPrinter(o, tm); + ARMTargetAsmInfo *TAI = new ARMTargetAsmInfo(); + return new ARMAsmPrinter(o, tm, TAI); } /// runOnMachineFunction - This uses the printMachineInstruction() @@ -187,7 +195,7 @@ abort(); break; case MachineOperand::MO_ConstantPoolIndex: - O << PrivateGlobalPrefix << "CPI" << getFunctionNumber() + O << TAI->getPrivateGlobalPrefix() << "CPI" << getFunctionNumber() << '_' << MO.getConstantPoolIndex(); break; default: _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits