Author: Maciej Fijalkowski <[email protected]>
Branch: jitframe-on-heap
Changeset: r60752:5e9244c2920d
Date: 2013-01-31 11:55 +0200
http://bitbucket.org/pypy/pypy/changeset/5e9244c2920d/

Log:    we only ever allocate the jitframe before assembler, move
        gc_assume_young_pointers to malloc itself.

diff --git a/rpython/jit/backend/llsupport/gc.py 
b/rpython/jit/backend/llsupport/gc.py
--- a/rpython/jit/backend/llsupport/gc.py
+++ b/rpython/jit/backend/llsupport/gc.py
@@ -139,6 +139,7 @@
         """ Allocate a new frame, overwritten by tests
         """
         frame = jitframe.JITFRAME.allocate(frame_info)
+        llop.gc_assume_young_pointers(lltype.Void, frame)
         return frame
 
 class JitFrameDescrs:
diff --git a/rpython/jit/backend/x86/runner.py 
b/rpython/jit/backend/x86/runner.py
--- a/rpython/jit/backend/x86/runner.py
+++ b/rpython/jit/backend/x86/runner.py
@@ -137,9 +137,6 @@
                         assert kind == history.REF
                         self.set_ref_value(ll_frame, num, arg)
                     num += WORD
-                # no GC operation between gc_assume_young_pointers and
-                # the actual call to assembler!
-                llop.gc_assume_young_pointers(lltype.Void, frame)
                 ll_frame = func(ll_frame)
             finally:
                 if not self.translate_support_code:
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to