[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pypy-svn
Subject:    [pypy-commit] pypy stmgc-c7: translation fixes
From:       arigo <noreply () buildbot ! pypy ! org>
Date:       2015-01-31 4:02:54
Message-ID: 20150131040254.A2CFF1C0FD4 () cobra ! cs ! uni-duesseldorf ! de
[Download RAW message or body]

Author: Armin Rigo <arigo@tunes.org>
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
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic