aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2008-01-05 02:26:58 +0000
committerEvan Cheng <evan.cheng@apple.com>2008-01-05 02:26:58 +0000
commit2a3e08b5961353fa3faeadf81f481ae9f5463427 (patch)
tree480ae5513b731edf30a29cf969f552b7053d3bc1 /include
parent9bb459b55411c45175e599f6f421b7a57060ee57 (diff)
downloadexternal_llvm-2a3e08b5961353fa3faeadf81f481ae9f5463427.zip
external_llvm-2a3e08b5961353fa3faeadf81f481ae9f5463427.tar.gz
external_llvm-2a3e08b5961353fa3faeadf81f481ae9f5463427.tar.bz2
X86 JIT PIC jumptable support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45616 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/CodeGen/MachineCodeEmitter.h1
-rw-r--r--include/llvm/Target/TargetJITInfo.h7
2 files changed, 8 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/MachineCodeEmitter.h b/include/llvm/CodeGen/MachineCodeEmitter.h
index ede40d1..2c207f2 100644
--- a/include/llvm/CodeGen/MachineCodeEmitter.h
+++ b/include/llvm/CodeGen/MachineCodeEmitter.h
@@ -58,6 +58,7 @@ protected:
/// all code emission requests will be ignored (this is the buffer overflow
/// condition).
unsigned char *CurBufferPtr;
+
public:
virtual ~MachineCodeEmitter() {}
diff --git a/include/llvm/Target/TargetJITInfo.h b/include/llvm/Target/TargetJITInfo.h
index 3be6cb7..1ad927b 100644
--- a/include/llvm/Target/TargetJITInfo.h
+++ b/include/llvm/Target/TargetJITInfo.h
@@ -55,6 +55,13 @@ namespace llvm {
return 0;
}
+ /// getPICJumpTableEntry - Returns the value of the jumptable entry for the
+ /// specific basic block.
+ virtual intptr_t getPICJumpTableEntry(intptr_t BB, intptr_t JTBase) {
+ assert(0 && "This target doesn't implement getPICJumpTableEntry!");
+ return 0;
+ }
+
/// LazyResolverFn - This typedef is used to represent the function that
/// unresolved call points should invoke. This is a target specific
/// function that knows how to walk the stack and find out which stub the