Author: Maciej Fijalkowski <fij...@gmail.com> Branch: jitframe-on-heap Changeset: r60805:b2af635e45dc Date: 2013-01-31 13:12 +0200 http://bitbucket.org/pypy/pypy/changeset/b2af635e45dc/
Log: runner tests fixes diff --git a/rpython/jit/backend/arm/test/test_runner.py b/rpython/jit/backend/arm/test/test_runner.py --- a/rpython/jit/backend/arm/test/test_runner.py +++ b/rpython/jit/backend/arm/test/test_runner.py @@ -30,9 +30,10 @@ 'adds', 'cmp', 'beq', 'b'] bridge_loop_instructions = ['movw', 'movt', 'bx'] - def setup_method(self, meth): - self.cpu = CPU(rtyper=None, stats=FakeStats()) - self.cpu.setup_once() + def get_cpu(self): + cpu = CPU(rtyper=None, stats=FakeStats()) + cpu.setup_once() + return cpu def test_result_is_spilled(self): cpu = self.cpu diff --git a/rpython/jit/backend/llgraph/runner.py b/rpython/jit/backend/llgraph/runner.py --- a/rpython/jit/backend/llgraph/runner.py +++ b/rpython/jit/backend/llgraph/runner.py @@ -885,13 +885,13 @@ if faildescr == self.cpu.done_with_this_frame_descr_int: reset_vable(jd, vable) return self.cpu.get_int_value(pframe, 0) - if faildescr == self.cpu.done_with_this_frame_descr_ref: + elif faildescr == self.cpu.done_with_this_frame_descr_ref: reset_vable(jd, vable) return self.cpu.get_ref_value(pframe, 0) - if faildescr == self.cpu.done_with_this_frame_descr_float: + elif faildescr == self.cpu.done_with_this_frame_descr_float: reset_vable(jd, vable) return self.cpu.get_float_value(pframe, 0) - if faildescr == self.cpu.done_with_this_frame_descr_void: + elif faildescr == self.cpu.done_with_this_frame_descr_void: reset_vable(jd, vable) return None # diff --git a/rpython/jit/backend/llgraph/test/test_llgraph.py b/rpython/jit/backend/llgraph/test/test_llgraph.py --- a/rpython/jit/backend/llgraph/test/test_llgraph.py +++ b/rpython/jit/backend/llgraph/test/test_llgraph.py @@ -1,23 +1,16 @@ import py -from rpython.rtyper.lltypesystem import lltype, llmemory, rstr, rclass -from rpython.rtyper.test.test_llinterp import interpret -from rpython.rlib.unroll import unrolling_iterable - -from rpython.jit.metainterp.history import BoxInt, BoxPtr, Const, ConstInt,\ - TreeLoop -from rpython.jit.metainterp.resoperation import ResOperation, rop -from rpython.jit.metainterp.executor import execute +from rpython.rtyper.lltypesystem import lltype, llmemory from rpython.jit.codewriter import heaptracker from rpython.jit.backend.test.runner_test import LLtypeBackendTest +from rpython.jit.backend.llgraph.runner import LLGraphCPU class TestLLTypeLLGraph(LLtypeBackendTest): # for individual tests see: # ====> ../../test/runner_test.py - from rpython.jit.backend.llgraph.runner import LLGraphCPU as cpu_type - def setup_method(self, _): - self.cpu = self.cpu_type(None) + def get_cpu(self): + return LLGraphCPU(None) def test_memoryerror(self): py.test.skip("does not make much sense on the llgraph backend") diff --git a/rpython/jit/backend/test/runner_test.py b/rpython/jit/backend/test/runner_test.py --- a/rpython/jit/backend/test/runner_test.py +++ b/rpython/jit/backend/test/runner_test.py @@ -112,6 +112,13 @@ avoid_instances = False + def setup_method(self, _): + self.cpu = self.get_cpu() + self.cpu.done_with_this_frame_descr_int = None + self.cpu.done_with_this_frame_descr_ref = None + self.cpu.done_with_this_frame_descr_float = None + self.cpu.done_with_this_frame_descr_void = None + def test_compile_linear_loop(self): i0 = BoxInt() i1 = BoxInt() @@ -2816,17 +2823,13 @@ # test the fast path, which should not call assembler_helper() del called[:] - prev_descr = self.cpu.done_with_this_frame_descr_int self.cpu.done_with_this_frame_descr_int = finish_descr - try: - othertoken = JitCellToken() - self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken) - args = [i+1 for i in range(10)] - deadframe = self.cpu.execute_token(othertoken, *args) - assert self.cpu.get_int_value(deadframe, 0) == 97 - assert not called - finally: - self.cpu.done_with_this_frame_int_v = prev_descr + othertoken = JitCellToken() + self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken) + args = [i+1 for i in range(10)] + deadframe = self.cpu.execute_token(othertoken, *args) + assert self.cpu.get_int_value(deadframe, 0) == 97 + assert not called def test_assembler_call_float(self): if not self.cpu.supports_floats: @@ -2886,19 +2889,15 @@ # test the fast path, which should not call assembler_helper() del called[:] - prev_descr = self.cpu.done_with_this_frame_descr_float self.cpu.done_with_this_frame_descr_float = finish_descr - try: - othertoken = JitCellToken() - self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken) - args = [longlong.getfloatstorage(1.2), - longlong.getfloatstorage(4.2)] - deadframe = self.cpu.execute_token(othertoken, *args) - x = self.cpu.get_float_value(deadframe, 0) - assert longlong.getrealfloat(x) == 1.2 + 4.2 - assert not called - finally: - self.cpu.done_with_this_frame_descr_float = prev_descr + othertoken = JitCellToken() + self.cpu.compile_loop(loop.inputargs, loop.operations, othertoken) + args = [longlong.getfloatstorage(1.2), + longlong.getfloatstorage(4.2)] + deadframe = self.cpu.execute_token(othertoken, *args) + x = self.cpu.get_float_value(deadframe, 0) + assert longlong.getrealfloat(x) == 1.2 + 4.2 + assert not called def test_raw_malloced_getarrayitem(self): ARRAY = rffi.CArray(lltype.Signed) diff --git a/rpython/jit/backend/x86/test/test_runner.py b/rpython/jit/backend/x86/test/test_runner.py --- a/rpython/jit/backend/x86/test/test_runner.py +++ b/rpython/jit/backend/x86/test/test_runner.py @@ -34,9 +34,10 @@ bridge_loop_instructions = ['cmp', 'jge', 'mov', 'mov', 'mov', 'mov', 'call', 'mov', 'jmp'] - def setup_method(self, meth): - self.cpu = CPU(rtyper=None, stats=FakeStats()) - self.cpu.setup_once() + def get_cpu(self): + cpu = CPU(rtyper=None, stats=FakeStats()) + cpu.setup_once() + return cpu def test_execute_ptr_operation(self): cpu = self.cpu _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit