PR140 - repaired icedtea7
[cacao.git] / src / vm / linker.hpp
index 43dce68ed02be70d55cde024277bbcf992c9defd..0d578be501a0eed9e18211f34f1a8e7a1cb89861 100644 (file)
@@ -1,6 +1,6 @@
 /* src/vm/linker.h - class linker header
 
-   Copyright (C) 1996-2005, 2006, 2007, 2008
+   Copyright (C) 1996-2005, 2006, 2007, 2008, 2010
    CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
 
    This file is part of CACAO.
@@ -66,7 +66,18 @@ struct arraydescriptor {
 /* This lock must be taken while renumbering classes or while atomically      */
 /* accessing classes.                                                         */
 
-extern Mutex *linker_classrenumber_mutex;
+#if USES_NEW_SUBTYPE
+
+#define LOCK_CLASSRENUMBER_LOCK   /* nothing */
+#define UNLOCK_CLASSRENUMBER_LOCK /* nothing */
+
+#else
+extern Mutex *linker_classrenumber_lock;
+
+#define LOCK_CLASSRENUMBER_LOCK   linker_classrenumber_lock->lock()
+#define UNLOCK_CLASSRENUMBER_LOCK linker_classrenumber_lock->unlock()
+
+#endif
 
 
 /* function prototypes ********************************************************/
@@ -79,6 +90,9 @@ void       linker_preinit(void);
 void       linker_init(void);
 classinfo *link_class(classinfo *c);
 
+void linker_create_string_later(java_object_t **a, utf *u);
+void linker_initialize_deferred_strings();
+
 #ifdef __cplusplus
 }
 #endif