* src/mm/cacao-gc/gc.h: Added GC_EXECUTIONSTATE and GC_SOURCESTATE defines.
authormichi <none@none>
Wed, 28 Mar 2007 22:55:14 +0000 (22:55 +0000)
committermichi <none@none>
Wed, 28 Mar 2007 22:55:14 +0000 (22:55 +0000)
* src/mm/cacao-gc/gc.c [!ENABLE_THREADS]: Added _no_threads variables for
above defines.

* src/mm/cacao-gc/rootset.c: Now uses above defines.
* src/vm/jit/replace.c (replace_me, replace_gc_from_native): Same.

--HG--
branch : exact-gc

38 files changed:
configure.ac
src/mm/cacao-gc/gc.c
src/mm/cacao-gc/gc.h
src/mm/cacao-gc/rootset.c
src/vm/builtin.c
src/vm/builtin.h
src/vm/jit/alpha/md.c
src/vm/jit/alpha/patcher.c
src/vm/jit/i386/emit.c
src/vm/jit/i386/patcher.c
src/vm/jit/jit.c
src/vm/jit/jit.h
src/vm/jit/mips/md.c
src/vm/jit/mips/patcher.c
src/vm/jit/parse.c
src/vm/jit/powerpc/patcher.c
src/vm/jit/powerpc64/patcher.c
src/vm/jit/replace.c
src/vm/jit/s390/arch.h
src/vm/jit/s390/asmpart.S
src/vm/jit/s390/codegen.c
src/vm/jit/s390/codegen.h
src/vm/jit/s390/emit.c
src/vm/jit/s390/emit.h
src/vm/jit/s390/md-abi.h
src/vm/jit/s390/patcher.c
src/vm/jit/x86_64/asmpart.S
src/vm/jit/x86_64/emit.c
src/vm/jit/x86_64/emit.h
src/vm/jit/x86_64/md.c
src/vm/jit/x86_64/patcher.c
src/vmcore/classcache.c
src/vmcore/linker.c
src/vmcore/method.c
src/vmcore/method.h
src/vmcore/options.c
src/vmcore/options.h
src/vmcore/statistics.c

index c2ca770c0ffaab9c23037250ded6543161a94b36..05284e9099bc4a68726a95941f2c8a17c058d101 100644 (file)
@@ -22,7 +22,7 @@ dnl along with this program; if not, write to the Free Software
 dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 dnl 02110-1301, USA.
 dnl 
-dnl $Id: configure.ac 7434 2007-03-02 19:44:53Z edwin $
+dnl $Id: configure.ac 7441 2007-03-02 23:13:10Z michi $
 
 dnl Process this file with autoconf to produce a configure script.
 
index 51b14498f7d7430e1d7f36e7f0bd39e1b2b027c8..966d5e26ec22ca0cae64d38930865ed2fa9b5c0f 100644 (file)
@@ -62,6 +62,11 @@ bool gc_pending;
 bool gc_running;
 bool gc_notify_finalizer;
 
+#if !defined(ENABLE_THREADS)
+executionstate_t *_no_threads_executionstate;
+sourcestate_t    *_no_threads_sourcestate;
+#endif
+
 
 /* gc_init *********************************************************************
 
@@ -122,7 +127,7 @@ void gc_collect(s4 level)
 
        /* this is only quick'n'dirty check, but is NOT thread safe */
        if (gc_pending || gc_running) {
-               GC_LOG("GC: Preventing reentrance!");
+               GC_LOG( dolog("GC: Preventing reentrance!"); );
                return;
        }
 
@@ -253,9 +258,6 @@ void gc_collect(s4 level)
 bool gc_suspend(threadobject *thread, u1 *pc, u1 *sp)
 {
        codeinfo         *code;
-       stackframeinfo   *sfi;
-       executionstate_t *es;
-       sourcestate_t    *ss;
 
        /* check if the thread suspended itself */
        if (pc == NULL) {
index 38558b2558ccabdaae87def776cfc4862febe3e3..760ae51f90903b2caed006ca6e816a3e0938bac2 100644 (file)
@@ -47,6 +47,8 @@
 # include "threads/native/threads.h"
 #endif
 
+#include "vm/jit/replace.h"
+
 
 /* Configuration Switches *****************************************************/
 
@@ -115,6 +117,21 @@ extern bool gc_pending;
 extern bool gc_notify_finalizer;
 
 
+/* No-Thread specific stuff ***************************************************/
+
+#if defined(ENABLE_THREADS)
+# define GC_EXECUTIONSTATE (thread->es)
+# define GC_SOURCESTATE    (thread->ss)
+#else
+# define GC_EXECUTIONSTATE (_no_threads_executionstate)
+# define GC_SOURCESTATE    (_no_threads_sourcestate)
+
+extern executionstate_t *_no_threads_executionstate;
+extern sourcestate_t    *_no_threads_sourcestate;
+
+#endif
+
+
 /* Prototypes *****************************************************************/
 
 #if defined(ENABLE_THREADS)
index 6dba5cfb6ef0e33bc0699817e00dcb76d4621733..c5e2a88f656dfbdea6dc4334d54a5f7e0ebe3176 100644 (file)
@@ -257,12 +257,8 @@ void rootset_from_thread(threadobject *thread, rootset_t *rs)
                        stacktrace_dump_trace(thread); );
 
        /* get the sourcestate of the threads */
-#if defined(ENABLE_THREADS)
-       es = thread->es;
-       ss = thread->ss;
-#else
-       GC_ASSERT(0);
-#endif
+       es = GC_EXECUTIONSTATE;
+       ss = GC_SOURCESTATE;
 
        GC_ASSERT(es);
        GC_ASSERT(ss);
@@ -303,7 +299,11 @@ void rootset_from_thread(threadobject *thread, rootset_t *rs)
        }
 
        /* now walk through all local references of this thread */
+#if defined(ENABLE_THREADS)
        lrt = thread->_localref_table;
+#else
+       lrt = LOCALREFTABLE;
+#endif
        while (lrt) {
 
                for (i = 0; i < lrt->used; i++) {
index 1daead141581be1bfde332d52e806513fa84ef42..75a55f6bce360f3c288bb63fd83c6be655a64d25 100644 (file)
@@ -28,7 +28,7 @@
    calls instead of machine instructions, using the C calling
    convention.
 
-   $Id: builtin.c 7459 2007-03-05 17:34:43Z edwin $
+   $Id: builtin.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 3b4b60476abcae93812cd45023477e79883852b9..a66fe2d5dc2fb1056420df43b67194ab59e833ef 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: builtin.h 7486 2007-03-08 13:50:07Z twisti $
+   $Id: builtin.h 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index ea85b86bb175ee78e286fb7e5068dcd78a58ef43..41c63662af286dc32c159e11ee69cd4534084a0d 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: md.c 7355 2007-02-14 10:57:32Z twisti $
+   $Id: md.c 7304 2007-02-09 10:35:26Z twisti $
 
 */
 
index 51a1190eda66aa3d428506d0bb28e09f21cfb357..2c37a890760009bb18ef11f30b369845462acdc8 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: patcher.c 7464 2007-03-06 00:26:31Z edwin $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 935ca3a6edd167cefddffcd51344655232451b31..5ff1011f43ee2efa5a95aaef3cb38eb77c54574e 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: emit.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: emit.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 59332b6b1d1aaa34c188e7dc7a9bb6e25b6b7631..297a9902b847d94398b603d63e27bf696e542a08 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: patcher.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 03392eea2046344b1f7e13428c16afd1901f36dd..647208c91611fd32417a1842350a44820ae3747e 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: jit.c 7451 2007-03-04 20:10:18Z edwin $
+   $Id: jit.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index bef4a05a210d1307d7f275fd35c13f384d99c4d1..37d9c3bfa6943d824edaa39ff608108cdd42558a 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: jit.h 7464 2007-03-06 00:26:31Z edwin $
+   $Id: jit.h 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index fedd7447247df8b0ce314a228ec0aea10858bbb7..b8b0e9dff3de3a323113fb19aeec95ac51fa3933 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: md.c 7477 2007-03-07 14:05:04Z twisti $
+   $Id: md.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index b45876cd7478810db48fde10531d54b4d4b893e4..32a21599f8effb56ac219a012cb8b3b18a45ae06 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: patcher.c 7464 2007-03-06 00:26:31Z edwin $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index b8cb836b11912fb8ea320ef0cf36c5ec6365a4f6..7742cb28e52680f20564d34eefdff21555644479 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: parse.c 7464 2007-03-06 00:26:31Z edwin $
+   $Id: parse.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 11f4438f9ab24873bd9cd2c0da6877a2ff8442ea..77f12f21032d291580cc4b619587b21326952af9 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: patcher.c 7464 2007-03-06 00:26:31Z edwin $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index f1b0e595fea123ece354f62320983fbd20493b79..6f5add6cc7bfa6ce5ba53c918284aeddc6f15fad 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: patcher.c 7464 2007-03-06 00:26:31Z edwin $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 163f42d27071b5519879c9e959e138ae81026d02..99522ff6cb172dd1b3eaf22a6a8545cfebe0e966 100644 (file)
@@ -2788,8 +2788,8 @@ void replace_me(rplpoint *rp, executionstate_t *es)
                replace_deactivate_replacement_points(frame->tocode);
 
                /* remember executionstate and sourcestate for this thread */
-               thread->es = es;
-               thread->ss = ss;
+               GC_EXECUTIONSTATE = es;
+               GC_SOURCESTATE    = ss;
 
                /* really suspend this thread now (PC = 0) */
                threads_suspend_ack(NULL, NULL);
@@ -2876,8 +2876,8 @@ void replace_gc_from_native(threadobject *thread, u1 *pc, u1 *sp)
        replace_map_source_state_identity(ss);
 
        /* remember executionstate and sourcestate for this thread */
-       thread->es = es;
-       thread->ss = ss;
+       GC_EXECUTIONSTATE = es;
+       GC_SOURCESTATE    = ss;
 }
 #endif
 
index d8a4a160601122c3c156425ef83601485670a38b..68d3f968a729914c6304557c06be0de28c4dec06 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: arch.h 7356 2007-02-14 11:00:28Z twisti $
+   $Id: arch.h 7312 2007-02-10 00:49:37Z pm $
 
 */
 
index 9da2c79b4e89ef978e84141118fb5e511891ac82..d656e4c595c0e8d3527c7d6dc34c15c515a26fb7 100644 (file)
@@ -30,7 +30,7 @@
 
    Changes: Edwin Steiner
 
-   $Id: asmpart.S 7442 2007-03-02 23:28:37Z pm $
+   $Id: asmpart.S 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 0f3a8c25ad414127bcc06b7b6ce00199e01a62cb..949c12e90c2a203357187111bf5c65e45762dbf4 100644 (file)
@@ -29,7 +29,7 @@
             Christian Ullrich
             Edwin Steiner
 
-   $Id: codegen.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: codegen.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 1861fdffa0aa88f42cdf1c4a6995f33221381283..841a590ddb7bc7843a1aead8f16b69a38ccd03b8 100644 (file)
@@ -27,7 +27,7 @@
    Authors: Andreas Krall
             Christian Thalinger
 
-   $Id: codegen.h 7486 2007-03-08 13:50:07Z twisti $
+   $Id: codegen.h 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 4d0fb163993f5393f9ab8eea04777ae29018e46b..1fd742a8f878105e7ff4a6c835754cd9b1e6cdd8 100644 (file)
@@ -26,7 +26,7 @@
 
    Authors: Christian Thalinger
 
-   $Id: emit.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: emit.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index d7feabd11f4aa49afb339ac064d1d09dcbd59033..478fbfbabc54361a80b66ad309fc1777b5c41af3 100644 (file)
@@ -28,7 +28,7 @@
 
    Changes:
 
-   $Id: emit.h 7486 2007-03-08 13:50:07Z twisti $
+   $Id: emit.h 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index ff0bcba699e25a07abc1cbeaf55108386ea2e4db..9d1fdfc0259e33d75a5cbbe046b937156fe5ec11 100644 (file)
@@ -28,7 +28,7 @@
 
    Changes:
 
-   $Id: md-abi.h 7486 2007-03-08 13:50:07Z twisti $
+   $Id: md-abi.h 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index decaea9b2e1690f71f2e145f0be76e2173355fc4..ba568c2c2cc462116bc89fb3885500b01615ffcb 100644 (file)
@@ -28,7 +28,7 @@
 
    Changes:
 
-   $Id: patcher.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 0cac95447e6b37dbf00fa41ef461992f643b73bd..79d21ea83f91f3b5c4750f68248a3b872cac7877 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: asmpart.S 7475 2007-03-07 12:37:34Z twisti $
+   $Id: asmpart.S 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 448d30dadb65e1bd98a3463be3d6bef0fb23c9ff..6c6be8218abe0a59eff60eae3e1619a02c869f2a 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: emit.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: emit.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index ab92d410dc3caf18d7eca7d85a9c19d21cd2d076..ce88f97b75cb4dd43aea2be6c10582fdd69476aa 100644 (file)
@@ -28,7 +28,7 @@
 
    Changes:
 
-   $Id: emit.h 6090 2006-11-29 20:40:10Z twisti $
+   $Id: emit.h 6087 2006-11-29 20:15:47Z twisti $
 
 */
 
index 816a5c8bc24e8469f3220ce858f2efb45b36ece1..e59e81f58bf2d2f874f4a2ebc5b3c9d3a461e4d2 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: md.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: md.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index a4c54135a146e9800be37bb9efa5f95a763c3865..c0623969bc5ba39efd6ed29118a5d0004a08cde1 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: patcher.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: patcher.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index bcbe5c1d2156909a9438741ef88e094f262a4a68..11a6669078b793583b96bea78ce96426e4fb214e 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: classcache.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: classcache.c 7441 2007-03-02 23:13:10Z michi $
 
 */
 
index c3fcd57db13b81ba7fb82cb04f67876f5b354375..e9c3c249d2bb4f242f6152bf2cd0f49cf03e3018 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: linker.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: linker.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 28557edcb76d5345c48d7405f6794f0e23009298..274008a3750a63eac62b1547ed2494141d70e54a 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: method.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: method.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index 81f6e8afc0c8eb368e811877e2049691114a5fd2..208f8a57a3201180e80877eb1425144ba90a8545 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: method.h 7486 2007-03-08 13:50:07Z twisti $
+   $Id: method.h 7483 2007-03-08 13:17:40Z michi $
 */
 
 
index e422fedcdceac8cd96100a7f4f1b987564562237..51f9c8b32d9aab7193a3de5d3b4245e1b209bfc6 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: options.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: options.c 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index c291daa07f9675b542c502674e98bfe6b0b100de..ee06449b4d8d925cf146c746dd214578cda34034 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: options.h 7486 2007-03-08 13:50:07Z twisti $
+   $Id: options.h 7483 2007-03-08 13:17:40Z michi $
 
 */
 
index fc0b5afe0ada788d731dd92e66575a418e7ce961..8cf56b9f8ea13752c3d4a11a5f48427b0b27de7e 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: statistics.c 7486 2007-03-08 13:50:07Z twisti $
+   $Id: statistics.c 7483 2007-03-08 13:17:40Z michi $
 
 */