mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 21:29:20 +00:00
Remove the debug machine code emitter. The "FilePrinterEmitter" is more
useful for debugging. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28051 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cdf38c4edb
commit
3a9cfbaf86
@ -12,55 +12,12 @@
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "llvm/CodeGen/MachineCodeEmitter.h"
|
||||
#include "llvm/CodeGen/MachineFunction.h"
|
||||
#include "llvm/Function.h"
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <ios>
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
namespace {
|
||||
struct DebugMachineCodeEmitter : public MachineCodeEmitter {
|
||||
void startFunction(MachineFunction &F) {
|
||||
std::cout << "\n**** Writing machine code for function: "
|
||||
<< F.getFunction()->getName() << "\n";
|
||||
}
|
||||
void finishFunction(MachineFunction &F) {
|
||||
std::cout << "\n";
|
||||
}
|
||||
void startFunctionStub(unsigned StubSize) {
|
||||
std::cout << "\n--- Function stub:\n";
|
||||
}
|
||||
void *finishFunctionStub(const Function *F) {
|
||||
std::cout << "\n--- End of stub for Function\n";
|
||||
return 0;
|
||||
}
|
||||
|
||||
void emitByte(unsigned char B) {
|
||||
std::cout << "0x" << std::hex << (unsigned int)B << std::dec << " ";
|
||||
}
|
||||
void emitWord(unsigned W) {
|
||||
std::cout << "0x" << std::hex << W << std::dec << " ";
|
||||
}
|
||||
void emitWordAt(unsigned W, unsigned *Ptr) {
|
||||
std::cout << "0x" << std::hex << W << std::dec << " (at "
|
||||
<< (void*) Ptr << ") ";
|
||||
}
|
||||
|
||||
void addRelocation(const MachineRelocation &MR) {
|
||||
std::cout << "<relocation> ";
|
||||
}
|
||||
|
||||
virtual unsigned char* allocateGlobal(unsigned size, unsigned alignment)
|
||||
{ return 0; }
|
||||
|
||||
uint64_t getConstantPoolEntryAddress(unsigned Num) { return 0; }
|
||||
uint64_t getJumpTableEntryAddress(unsigned Num) { return 0; }
|
||||
uint64_t getCurrentPCValue() { return 0; }
|
||||
uint64_t getCurrentPCOffset() { return 0; }
|
||||
};
|
||||
|
||||
class FilePrinterEmitter : public MachineCodeEmitter {
|
||||
std::ofstream actual;
|
||||
std::ostream &o;
|
||||
@ -172,15 +129,6 @@ namespace {
|
||||
};
|
||||
}
|
||||
|
||||
/// createDebugMachineCodeEmitter - Return a dynamically allocated machine
|
||||
/// code emitter, which just prints the opcodes and fields out the cout. This
|
||||
/// can be used for debugging users of the MachineCodeEmitter interface.
|
||||
///
|
||||
MachineCodeEmitter *
|
||||
MachineCodeEmitter::createDebugEmitter() {
|
||||
return new DebugMachineCodeEmitter();
|
||||
}
|
||||
|
||||
MachineCodeEmitter *
|
||||
MachineCodeEmitter::createFilePrinterEmitter(MachineCodeEmitter &MCE) {
|
||||
return new FilePrinterEmitter(MCE, std::cerr);
|
||||
|
Loading…
Reference in New Issue
Block a user