Author: David Malcolm <dmalc...@redhat.com> Branch: libgccjit-backend Changeset: r75086:988365232237 Date: 2014-12-23 11:38 -0500 http://bitbucket.org/pypy/pypy/changeset/988365232237/
Log: Fix test_rffi_bindings.py diff --git a/rpython/jit/backend/libgccjit/rffi_bindings.py b/rpython/jit/backend/libgccjit/rffi_bindings.py --- a/rpython/jit/backend/libgccjit/rffi_bindings.py +++ b/rpython/jit/backend/libgccjit/rffi_bindings.py @@ -31,7 +31,7 @@ from rpython.rtyper.lltypesystem import lltype def make_eci(): - eci = ExternalCompilationInfo(includes=['libgccjit.h'], + eci = ExternalCompilationInfo(includes=['stdio.h', 'libgccjit.h'], include_dirs=[INCLUDE_DIR], libraries=['gccjit'], library_dirs=[LIB_DIR]) @@ -144,6 +144,9 @@ ############################################################ # Types ############################################################ + (self.GCC_JIT_OBJECT_P, + 'gcc_jit_type_as_object', [self.GCC_JIT_TYPE_P]), + (self.GCC_JIT_TYPE_P, 'gcc_jit_context_get_type', [self.GCC_JIT_CONTEXT_P, INT]), @@ -161,7 +164,11 @@ self.GCC_JIT_LOCATION_P, self.GCC_JIT_TYPE_P, CCHARP]), - (self.GCC_JIT_STRUCT_P, + + (self.GCC_JIT_OBJECT_P, + 'gcc_jit_field_as_object', [self.GCC_JIT_FIELD_P]), + + (self.GCC_JIT_STRUCT_P, 'gcc_jit_context_new_struct_type', [self.GCC_JIT_CONTEXT_P, self.GCC_JIT_LOCATION_P, CCHARP, @@ -204,6 +211,8 @@ self.GCC_JIT_LOCATION_P, self.GCC_JIT_TYPE_P, CCHARP]), + (self.GCC_JIT_OBJECT_P, + 'gcc_jit_param_as_object', [self.GCC_JIT_PARAM_P]), (self.GCC_JIT_LVALUE_P, 'gcc_jit_param_as_lvalue', [self.GCC_JIT_PARAM_P]), (self.GCC_JIT_RVALUE_P, @@ -233,6 +242,8 @@ (self.GCC_JIT_BLOCK_P, 'gcc_jit_function_new_block', [self.GCC_JIT_FUNCTION_P, CCHARP]), + (self.GCC_JIT_OBJECT_P, + 'gcc_jit_block_as_object', [self.GCC_JIT_BLOCK_P]), ############################################################ # lvalues, rvalues and expressions. @@ -245,9 +256,15 @@ self.GCC_JIT_TYPE_P, CCHARP]), + (self.GCC_JIT_OBJECT_P, + 'gcc_jit_lvalue_as_object', [self.GCC_JIT_LVALUE_P]), + (self.GCC_JIT_RVALUE_P, 'gcc_jit_lvalue_as_rvalue', [self.GCC_JIT_LVALUE_P]), + (self.GCC_JIT_OBJECT_P, + 'gcc_jit_rvalue_as_object', [self.GCC_JIT_RVALUE_P]), + (self.GCC_JIT_TYPE_P, 'gcc_jit_rvalue_get_type', [self.GCC_JIT_RVALUE_P]), @@ -773,7 +790,8 @@ class Type(Object): def __init__(self, lib, ctxt, inner_type): - Object.__init__(self, lib, ctxt, inner_type) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_type_as_object(inner_type)) self.inner_type = inner_type def get_pointer(self): @@ -783,12 +801,15 @@ class Field(Object): def __init__(self, lib, ctxt, inner_field): - Object.__init__(self, lib, ctxt, inner_field) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_field_as_object(inner_field)) self.inner_field = inner_field class Struct(Object): def __init__(self, lib, ctxt, inner_struct): - Object.__init__(self, lib, ctxt, inner_struct) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_type_as_object( + lib.gcc_jit_struct_as_type(inner_struct))) self.inner_struct = inner_struct def as_type(self): @@ -811,7 +832,8 @@ class RValue(Object): def __init__(self, lib, ctxt, inner_rvalue): - Object.__init__(self, lib, ctxt, inner_rvalue) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_rvalue_as_object(inner_rvalue)) self.inner_rvalue = inner_rvalue def get_type(self): @@ -836,7 +858,8 @@ class LValue(Object): def __init__(self, lib, ctxt, inner_lvalue): - Object.__init__(self, lib, ctxt, inner_lvalue) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_lvalue_as_object(inner_lvalue)) self.inner_lvalue = inner_lvalue def as_rvalue(self): @@ -861,7 +884,8 @@ class Param(Object): def __init__(self, lib, ctxt, inner_param): - Object.__init__(self, lib, ctxt, inner_param) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_param_as_object(inner_param)) self.inner_param = inner_param def as_rvalue(self): @@ -871,7 +895,9 @@ class Function(Object): def __init__(self, lib, ctxt, inner_function): - Object.__init__(self, lib, ctxt, inner_function) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_function_as_object(inner_function)) + self.inner_function = inner_function def new_local(self, type_, name): @@ -896,7 +922,9 @@ class Block(Object): def __init__(self, lib, ctxt, inner_block): - Object.__init__(self, lib, ctxt, inner_block) + Object.__init__(self, lib, ctxt, + lib.gcc_jit_block_as_object(inner_block)) + self.inner_block = inner_block def add_assignment(self, lvalue, rvalue): diff --git a/rpython/jit/backend/libgccjit/test/test_rffi_bindings.py b/rpython/jit/backend/libgccjit/test/test_rffi_bindings.py --- a/rpython/jit/backend/libgccjit/test/test_rffi_bindings.py +++ b/rpython/jit/backend/libgccjit/test/test_rffi_bindings.py @@ -50,7 +50,6 @@ f1 = compile_c(f, [], backendopt=False) f1 () - #assert False # to see stderr def test_compile_add_one_to(): eci = make_eci() @@ -163,7 +162,6 @@ f1 = compile_c(f, [], backendopt=False) assert f1() == 42 - assert False # to see stderr def test_oo_compile_add_one_to(): eci = make_eci() @@ -232,7 +230,6 @@ f1 = compile_c(f, [], backendopt=False) assert f1() == 42 - assert False # to see stderr # TODO: test of an error # should turn it into an exception, and capture the error _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit