Author: Armin Rigo <[email protected]>
Branch: stmgc-c8
Changeset: r78261:dbbc3ef7779c
Date: 2015-06-23 14:35 +0200
http://bitbucket.org/pypy/pypy/changeset/dbbc3ef7779c/

Log:    More

diff --git a/rpython/jit/backend/x86/regalloc.py 
b/rpython/jit/backend/x86/regalloc.py
--- a/rpython/jit/backend/x86/regalloc.py
+++ b/rpython/jit/backend/x86/regalloc.py
@@ -321,7 +321,7 @@
         while i < len(operations):
             op = operations[i]
             self.assembler.mc.mark_op(op)
-            if not self.assembler.cpu.gc_ll_descr.stm:   # incorrect with stm
+            if not rgc.stm_is_enabled():   # incorrect with stm
                 assert self.assembler.mc._frame_size == DEFAULT_FRAME_BYTES
             self.rm.position = i
             self.xrm.position = i
diff --git a/rpython/jit/backend/x86/rx86.py b/rpython/jit/backend/x86/rx86.py
--- a/rpython/jit/backend/x86/rx86.py
+++ b/rpython/jit/backend/x86/rx86.py
@@ -3,6 +3,7 @@
 from rpython.rlib.objectmodel import specialize
 from rpython.rlib.unroll import unrolling_iterable
 from rpython.rlib.rarithmetic import intmask
+from rpython.rlib import rgc
 from rpython.rtyper.lltypesystem import rffi
 from rpython.jit.backend.x86.arch import IS_X86_64
 
@@ -504,12 +505,14 @@
     def stack_frame_size_delta(self, delta):
         "Called when we generate an instruction that changes the value of ESP"
         self._frame_size += delta
+        if rgc.stm_is_enabled():
+            return      # the rest is ignored with STM
         self.frame_positions.append(self.get_relative_pos()) 
         self.frame_assignments.append(self._frame_size)
         assert self._frame_size >= self.WORD
 
     def check_stack_size_at_ret(self):
-        if IS_X86_64:
+        if IS_X86_64 and not rgc.stm_is_enabled():
             assert self._frame_size == self.WORD
             if not we_are_translated():
                 self._frame_size = None
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to