[pypy-commit] stmgc default: pass all of test_basic

Raemi noreply at buildbot.pypy.org
Tue Sep 9 09:56:49 CEST 2014


Author: Remi Meier <remi.meier at inf.ethz.ch>
Branch: 
Changeset: r1371:87edf3694c7e
Date: 2014-09-09 09:58 +0200
http://bitbucket.org/pypy/stmgc/changeset/87edf3694c7e/

Log:	pass all of test_basic

diff --git a/c8/stm/core.c b/c8/stm/core.c
--- a/c8/stm/core.c
+++ b/c8/stm/core.c
@@ -460,7 +460,7 @@
                        (int)pseg->transaction_state);
     }
 
-    throw_away_nursery(pseg);
+    long bytes_in_nursery = throw_away_nursery(pseg);
 
     reset_modified_from_backup_copies(segment_num);
 
@@ -482,6 +482,7 @@
         stm_rewind_jmp_restore_shadowstack(tl);
     assert(tl->shadowstack == pseg->shadowstack_at_start_of_transaction);
 #endif
+tl->last_abort__bytes_in_nursery = bytes_in_nursery;
 
 #pragma pop_macro("STM_SEGMENT")
 #pragma pop_macro("STM_PSEGMENT")
diff --git a/c8/stmgc.h b/c8/stmgc.h
--- a/c8/stmgc.h
+++ b/c8/stmgc.h
@@ -47,6 +47,7 @@
     /* rewind_setjmp's interface */
     rewind_jmp_thread rjthread;
     struct stm_shadowentry_s *shadowstack, *shadowstack_base;
+    long last_abort__bytes_in_nursery;
     /* the next fields are handled internally by the library */
     int associated_segment_num;
     struct stm_thread_local_s *prev, *next;
diff --git a/c8/test/support.py b/c8/test/support.py
--- a/c8/test/support.py
+++ b/c8/test/support.py
@@ -23,6 +23,7 @@
 typedef struct {
     rewind_jmp_thread rjthread;
     struct stm_shadowentry_s *shadowstack, *shadowstack_base;
+    long last_abort__bytes_in_nursery;
     int associated_segment_num;
     struct stm_thread_local_s *prev, *next;
     void *creating_pthread[2];


More information about the pypy-commit mailing list