Author: David Schneider <david.schnei...@picle.org> Branch: Changeset: r63232:9482149b527a Date: 2013-04-11 16:56 +0200 http://bitbucket.org/pypy/pypy/changeset/9482149b527a/
Log: move shared code to llsupport diff --git a/rpython/jit/backend/arm/assembler.py b/rpython/jit/backend/arm/assembler.py --- a/rpython/jit/backend/arm/assembler.py +++ b/rpython/jit/backend/arm/assembler.py @@ -111,26 +111,6 @@ self.loop_run_counters.append(struct) return struct - @specialize.argtype(1) - def _inject_debugging_code(self, looptoken, operations, tp, number): - if self._debug: - # before doing anything, let's increase a counter - s = 0 - for op in operations: - s += op.getopnum() - looptoken._arm_debug_checksum = s - - newoperations = [] - self._append_debugging_code(newoperations, tp, number, - None) - for op in operations: - newoperations.append(op) - if op.getopnum() == rop.LABEL: - self._append_debugging_code(newoperations, 'l', number, - op.getdescr()) - operations = newoperations - return operations - @staticmethod def _release_gil_shadowstack(): before = rffi.aroundstate.before diff --git a/rpython/jit/backend/llsupport/assembler.py b/rpython/jit/backend/llsupport/assembler.py --- a/rpython/jit/backend/llsupport/assembler.py +++ b/rpython/jit/backend/llsupport/assembler.py @@ -8,6 +8,7 @@ from rpython.rlib.debug import (debug_start, debug_stop, have_debug_prints, debug_print) from rpython.rlib.rarithmetic import r_uint +from rpython.rlib.objectmodel import specialize from rpython.rtyper.annlowlevel import cast_instance_to_gcref from rpython.rtyper.lltypesystem import rffi, lltype @@ -214,6 +215,24 @@ # to incompatibilities in how it's done, we leave it for the # caller to deal with + @specialize.argtype(1) + def _inject_debugging_code(self, looptoken, operations, tp, number): + if self._debug: + s = 0 + for op in operations: + s += op.getopnum() + + newoperations = [] + self._append_debugging_code(newoperations, tp, number, + None) + for op in operations: + newoperations.append(op) + if op.getopnum() == rop.LABEL: + self._append_debugging_code(newoperations, 'l', number, + op.getdescr()) + operations = newoperations + return operations + def _append_debugging_code(self, operations, tp, number, token): counter = self._register_counter(tp, number, token) c_adr = ConstInt(rffi.cast(lltype.Signed, counter)) diff --git a/rpython/jit/backend/x86/assembler.py b/rpython/jit/backend/x86/assembler.py --- a/rpython/jit/backend/x86/assembler.py +++ b/rpython/jit/backend/x86/assembler.py @@ -743,24 +743,6 @@ targettoken._ll_loop_code += rawstart self.target_tokens_currently_compiling = None - @specialize.argtype(1) - def _inject_debugging_code(self, looptoken, operations, tp, number): - if self._debug: - s = 0 - for op in operations: - s += op.getopnum() - - newoperations = [] - self._append_debugging_code(newoperations, tp, number, - None) - for op in operations: - newoperations.append(op) - if op.getopnum() == rop.LABEL: - self._append_debugging_code(newoperations, 'l', number, - op.getdescr()) - operations = newoperations - return operations - def _assemble(self, regalloc, inputargs, operations): self._regalloc = regalloc regalloc.compute_hint_frame_locations(operations) _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit