about summary refs log tree commit diff
path: root/src/rustc/lib
diff options
context:
space:
mode:
authorZack Corr <zack@z0w0.me>2012-08-26 22:40:21 +1000
committerBrian Anderson <banderson@mozilla.com>2012-08-31 16:20:35 -0700
commit7993f4820995c9b26d73e8a58bb8f3c0e2e79d47 (patch)
tree449106cbe7bdd17cf03b3c93c0559957b114e099 /src/rustc/lib
parentd7aa9918ef1673edcef261da41075203de5b15b3 (diff)
jit: Add custom memory manager (still segfaulting)
Diffstat (limited to 'src/rustc/lib')
-rw-r--r--src/rustc/lib/llvm.rs10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/rustc/lib/llvm.rs b/src/rustc/lib/llvm.rs
index 5c8bab166ec..ec9c669501b 100644
--- a/src/rustc/lib/llvm.rs
+++ b/src/rustc/lib/llvm.rs
@@ -986,12 +986,18 @@ extern mod llvm {
         call. */
     fn LLVMRustGetLastError() -> *c_char;
 
-    /** JIT the module. **/
-    fn LLVMRustJIT(PM: PassManagerRef,
+    /** Load a shared library to resolve symbols against. */
+    fn LLVMRustLoadLibrary(Filename: *c_char) -> bool;
+
+    /** Create the JIT engine. */
+    fn LLVMRustPrepareJIT(PM: PassManagerRef,
                    M: ModuleRef,
                    OptLevel: c_int,
                    EnableSegmentedStacks: bool) -> bool;
 
+    /** Execute the JIT engine. */
+    fn LLVMRustExecuteJIT() -> bool;
+
     /** Parses the bitcode in the given memory buffer. */
     fn LLVMRustParseBitcode(MemBuf: MemoryBufferRef) -> ModuleRef;