new is not a valid default anywhere, so make this pure virtual

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22542 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Andrew Lenharth 2005-07-28 18:13:59 +00:00
parent 3be872ed59
commit fe660397e1
3 changed files with 14 additions and 5 deletions

View File

@ -94,11 +94,8 @@ public:
//
virtual uint64_t getConstantPoolEntryAddress(unsigned Index) = 0;
// allocateGlobal - Allocate some space for a global variable. This is
// used by the JIT to allocate space in the global variable region.
virtual unsigned char* allocateGlobal(unsigned size, unsigned alignment) {
return new unsigned char[(size_t)size];
}
// allocateGlobal - Allocate some space for a global variable.
virtual unsigned char* allocateGlobal(unsigned size, unsigned alignment) = 0;
/// createDebugEmitter - Return a dynamically allocated machine
/// code emitter, which just prints the opcodes and fields out the cout. This

View File

@ -85,6 +85,11 @@ namespace llvm {
return 0;
}
virtual unsigned char* allocateGlobal(unsigned size, unsigned alignment) {
assert(0 && "Globals not implemented yet!");
return 0;
}
/// JIT SPECIFIC FUNCTIONS - DO NOT IMPLEMENT THESE HERE!
void startFunctionStub(unsigned StubSize) {
assert(0 && "JIT specific function called!");

View File

@ -51,6 +51,9 @@ namespace {
std::cout << "<relocation> ";
}
virtual unsigned char* allocateGlobal(unsigned size, unsigned alignment)
{ return 0; }
uint64_t getConstantPoolEntryAddress(unsigned Num) { return 0; }
uint64_t getCurrentPCValue() { return 0; }
uint64_t getCurrentPCOffset() { return 0; }
@ -142,6 +145,10 @@ namespace {
uint64_t getConstantPoolEntryAddress(unsigned Num) {
return MCE.getConstantPoolEntryAddress(Num);
}
virtual unsigned char* allocateGlobal(unsigned size, unsigned alignment)
{ return MCE.allocateGlobal(size, alignment); }
uint64_t getCurrentPCValue() {
return MCE.getCurrentPCValue();
}