diff options
author | hboehm <hboehm@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-09 21:33:02 +0000 |
---|---|---|
committer | hboehm <hboehm@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-09 21:33:02 +0000 |
commit | 9b87a1524d2a8086943ef3b0c240b1dc693cd744 (patch) | |
tree | 740a513131a2bfd49e69843a563d9ce978424f93 /boehm-gc/mark_rts.c | |
parent | 8024da994207870f456c6d8dc2a1bd312b008861 (diff) | |
download | gcc-9b87a1524d2a8086943ef3b0c240b1dc693cd744.tar.gz |
* allchblk.c (GC_allochblk_nth): Dont overlook available space if
GC disabled, correctly convert GC_finalizer_mem_freed to byte,
total_size to words.
* dyn_load.c (win32 GC_register_dynamic_libraries): Consider only
MEM_IMAGE regions.
* mach_dep.c (GC_with_callee_saves_pushed): separate into new function,
and indent appropriately.
* mark_rts.c (GC_approx_sp): Access stack.
* pthread_stop_world.c: (GC_suspend_handler): Explicitly push
callee-saves registers when appropriate.
(GC_stop_world): Handle EINTR from sem_wait (sync with Mono GC).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94776 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'boehm-gc/mark_rts.c')
-rw-r--r-- | boehm-gc/mark_rts.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/boehm-gc/mark_rts.c b/boehm-gc/mark_rts.c index 55eb5d54339..4074879a71a 100644 --- a/boehm-gc/mark_rts.c +++ b/boehm-gc/mark_rts.c @@ -368,8 +368,11 @@ ptr_t p; ptr_t GC_approx_sp() { - word dummy; + VOLATILE word dummy; + dummy = 42; /* Force stack to grow if necessary. Otherwise the */ + /* later accesses might cause the kernel to think we're */ + /* doing something wrong. */ # ifdef _MSC_VER # pragma warning(disable:4172) # endif |