Drop the argument to AsmPrinter::EmitConstantPool and make it virtual.

Overload it in the ARM backend to do nothing, since is does insane
constant pool emission.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94708 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2010-01-28 00:19:24 +00:00
parent 80c062001e
commit a2406190ca
4 changed files with 7 additions and 4 deletions

View File

@ -220,7 +220,7 @@ namespace llvm {
/// used to print out constants which have been "spilled to memory" by
/// the code generator.
///
void EmitConstantPool(const MachineConstantPool *MCP);
virtual void EmitConstantPool();
/// EmitJumpTableInfo - Print assembly representations of the jump tables
/// used by the current function to the current output stream.

View File

@ -294,7 +294,7 @@ void AsmPrinter::EmitGlobalVariable(const GlobalVariable *GV) {
/// function.
void AsmPrinter::EmitFunctionHeader() {
// Print out constants referenced by the function
EmitConstantPool(MF->getConstantPool());
EmitConstantPool();
// Print the 'header' of function.
const Function *F = MF->getFunction();
@ -440,7 +440,8 @@ namespace {
/// used to print out constants which have been "spilled to memory" by
/// the code generator.
///
void AsmPrinter::EmitConstantPool(const MachineConstantPool *MCP) {
void AsmPrinter::EmitConstantPool() {
const MachineConstantPool *MCP = MF->getConstantPool();
const std::vector<MachineConstantPoolEntry> &CP = MCP->getConstants();
if (CP.empty()) return;

View File

@ -164,6 +164,8 @@ namespace {
void printMachineInstruction(const MachineInstr *MI);
bool runOnMachineFunction(MachineFunction &F);
virtual void EmitConstantPool() {} // we emit constant pools customly!
virtual void EmitFunctionEntryLabel();
void EmitStartOfAsmFile(Module &M);
void EmitEndOfAsmFile(Module &M);

View File

@ -233,7 +233,7 @@ bool XCoreAsmPrinter::runOnMachineFunction(MachineFunction &MF) {
SetupMachineFunction(MF);
// Print out constants referenced by the function
EmitConstantPool(MF.getConstantPool());
EmitConstantPool();
// Emit the function start directives
emitFunctionStart(MF);