Author: Armin Rigo <[email protected]>
Branch: stmgc-c7
Changeset: r75599:c331dad2c6ab
Date: 2015-01-31 05:01 +0100
http://bitbucket.org/pypy/pypy/changeset/c331dad2c6ab/

Log:    translation fixes

diff --git a/rpython/jit/backend/llsupport/jitframe.py 
b/rpython/jit/backend/llsupport/jitframe.py
--- a/rpython/jit/backend/llsupport/jitframe.py
+++ b/rpython/jit/backend/llsupport/jitframe.py
@@ -138,10 +138,6 @@
     if not gcmap:
         return      # done
     gcmap_lgt = (gcmap + GCMAPLENGTHOFS).signed[0]
-    #
-    from rpython.jit.backend.llsupport.gcmap import GCMAP_STM_LOCATION
-    gcmap_lgt -= GCMAP_STM_LOCATION
-    #
     no = 0
     while no < gcmap_lgt:
         cur = (gcmap + GCMAPBASEOFS + UNSIGN_SIZE * no).unsigned[0]
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
@@ -1939,7 +1939,7 @@
         self.mc.JMP(imm(target))
         return startpos
 
-    def update_stm_location(self, extra_stack=0):
+    def update_stm_location(self, mc, extra_stack=0):
         if self.cpu.gc_ll_descr.stm:
             num, ref = self._regalloc.extract_raw_stm_location()
             mc.MOV_rs(r11.value, STM_SHADOWSTACK_BASE_OFS + extra_stack)
@@ -2453,7 +2453,7 @@
         self.mc.J_il8(rx86.Conditions['Z'], 0) # patched later
         jmp_adr = self.mc.get_relative_pos()
         #
-        self.update_stm_location()
+        self.update_stm_location(self.mc)
         self.push_gcmap(self.mc, gcmap, store=True)
         #
         # first save away the 4 registers from 'cond_call_register_arguments'
diff --git a/rpython/jit/backend/x86/callbuilder.py 
b/rpython/jit/backend/x86/callbuilder.py
--- a/rpython/jit/backend/x86/callbuilder.py
+++ b/rpython/jit/backend/x86/callbuilder.py
@@ -84,7 +84,7 @@
             self.asm.set_extra_stack_depth(self.mc, -self.current_esp)
         noregs = self.asm.cpu.gc_ll_descr.is_shadow_stack()
         gcmap = self.asm._regalloc.get_gcmap([eax], noregs=noregs)
-        self.asm.update_stm_location(-self.current_esp)
+        self.asm.update_stm_location(self.mc, -self.current_esp)
         self.asm.push_gcmap(self.mc, gcmap, store=True)
 
     def pop_gcmap(self):
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to