[pypy-commit] pypy default: move shared code to llsupport
bivab
noreply at buildbot.pypy.org
Thu Apr 11 16:58:21 CEST 2013
Author: David Schneider <david.schneider at 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)
More information about the pypy-commit
mailing list