]> gitweb.factorcode.org Git - factor.git/blob - extra/llvm/reader/reader.factor
Remove usages of <void*> and *void*
[factor.git] / extra / llvm / reader / reader.factor
1 ! Copyright (C) 2009 Matthew Willis.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: accessors alien.c-types alien.syntax destructors kernel
4 llvm.core llvm.engine llvm.jit llvm.wrappers ;
5
6 IN: llvm.reader
7
8 : buffer>module ( buffer -- module )
9     [
10         value>> f void* <ref> f void* <ref>
11         [ LLVMParseBitcode drop ] 2keep
12         void* deref [ llvm-throw ] when* void* deref
13         module new swap >>value
14     ] with-disposal ;
15
16 : load-module ( path -- module )
17     <buffer> buffer>module ;
18
19 : load-into-jit ( path name -- )
20     [ load-module ] dip add-module ;