示例#1
0
 def jit(self, mod):
     return llvm.create_jit_compiler(mod)
示例#2
0
 def jit(self, mod):
     return llvm.create_jit_compiler(mod)
示例#3
0
mod = lc.Module()
mod.triple = llvm.get_default_triple()
func = lc.Function(mod,
                   lc.FunctionType(lc.VoidType(), [lc.IntType(32)]),
                   name='foo')
builder = lc.IRBuilder(func.append_basic_block())
builder.ret_void()

print(mod)

mod = llvm.parse_assembly(str(mod))

mod.verify()
print(repr(mod))
print(mod)

with llvm.create_module_pass_manager() as pm:
    with llvm.create_pass_manager_builder() as pmb:
        pmb.populate(pm)
    pm.run(mod)

print(mod)

ee = llvm.create_jit_compiler(mod)
func = mod.get_function(name="foo")
print(func, ee.get_pointer_to_global(func))
ee.close()

llvm.shutdown()
示例#4
0
mod = lc.Module()
mod.triple = llvm.get_default_triple()
func = lc.Function(mod, lc.FunctionType(lc.VoidType(), [lc.IntType(32)]),
                   name='foo')
builder = lc.IRBuilder(func.append_basic_block())
builder.ret_void()

print(mod)

mod = llvm.parse_assembly(str(mod))

mod.verify()
print(repr(mod))
print(mod)

with llvm.create_module_pass_manager() as pm:
    with llvm.create_pass_manager_builder() as pmb:
        pmb.populate(pm)
    pm.run(mod)

print(mod)

ee = llvm.create_jit_compiler(mod)
func = mod.get_function(name="foo")
print(func, ee.get_pointer_to_global(func))
ee.close()

llvm.shutdown()