This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Libjava bootstrap still broken on arm-linux
- From: Andrew Haley <aph at redhat dot com>
- To: Richard Earnshaw <Richard dot Earnshaw at buzzard dot freeserve dot co dot uk>
- Cc: java-patches at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Sat, 27 Nov 2004 12:37:32 +0000
- Subject: Libjava bootstrap still broken on arm-linux
- References: <200411271131.iARBVXhW021247@merlin.buzzard.freeserve.co.uk>
Richard Earnshaw writes:
> Bootstrap has been broken on arm-linux since around the time of the BC
> branch merge (last successful bootstrap from sources checked out sometime
> on Nov 24).
>
> This is with sources checked out at 'Fri Nov 26 22:16:25 UTC 2004', so it
> should include Tom's latest patch.
Committed. Try it now.
2004-11-27 Andrew Haley <aph@redhat.com>
* link.cc (ensure_class_linked): Conditionally compile
_Jv_IsInterpretedClass on INTERPRETER.
(print_class_loaded): Likewise.
(wait_for_state): Likewise.
* include/jvm.h (ROUND): Move to here from include/java-interp.h.
* include/java-interp.h (ROUND): Remove.
Index: link.cc
===================================================================
RCS file: /cvs/gcc/gcc/libjava/link.cc,v
retrieving revision 1.2
diff -p -2 -c -r1.2 link.cc
*** link.cc 25 Nov 2004 03:46:56 -0000 1.2
--- link.cc 27 Nov 2004 12:27:48 -0000
*************** _Jv_Linker::ensure_class_linked (jclass
*** 1423,1427 ****
--- 1423,1429 ----
// occur in an obscure case involving the InnerClasses
// attribute.
+ #ifdef INTERPRETER
if (! _Jv_IsInterpretedClass (klass))
+ #endif
{
// Resolve class constants first, since other constant pool
*************** _Jv_Linker::print_class_loaded (jclass k
*** 1678,1682 ****
--- 1680,1688 ----
// We use a somewhat bogus test for the ABI here.
char *abi;
+ #ifdef INTERPRETER
if (_Jv_IsInterpretedClass (klass))
+ #else
+ if (false)
+ #endif
abi = "bytecode";
else if (klass->state == JV_STATE_PRELOADING)
*************** _Jv_Linker::wait_for_state (jclass klass
*** 1715,1719 ****
&& (klass->state == JV_STATE_COMPILED
|| klass->state == JV_STATE_PRELOADING)
! && ! _Jv_IsInterpretedClass (klass))
print_class_loaded (klass);
--- 1721,1728 ----
&& (klass->state == JV_STATE_COMPILED
|| klass->state == JV_STATE_PRELOADING)
! #ifdef INTERPRETER
! && ! _Jv_IsInterpretedClass (klass)
! #endif
! )
print_class_loaded (klass);
Index: include/java-interp.h
===================================================================
RCS file: /cvs/gcc/gcc/libjava/include/java-interp.h,v
retrieving revision 1.26
diff -p -2 -c -r1.26 java-interp.h
*** include/java-interp.h 25 Nov 2004 03:47:00 -0000 1.26
--- include/java-interp.h 27 Nov 2004 12:27:48 -0000
*************** int _Jv_count_arguments (_Jv_Utf8Const
*** 46,52 ****
void _Jv_VerifyMethod (_Jv_InterpMethod *method);
- /* FIXME: this should really be defined in some more generic place */
- #define ROUND(V, A) (((((unsigned) (V))-1) | ((A)-1))+1)
-
/* the interpreter is written in C++, primarily because it makes it easy for
* the entire thing to be "friend" with class Class. */
--- 46,49 ----
Index: include/jvm.h
===================================================================
RCS file: /cvs/gcc/gcc/libjava/include/jvm.h,v
retrieving revision 1.70
diff -p -2 -c -r1.70 jvm.h
*** include/jvm.h 25 Nov 2004 03:47:00 -0000 1.70
--- include/jvm.h 27 Nov 2004 12:27:48 -0000
*************** extern void (*_Jv_JVMPI_Notify_THREAD_EN
*** 556,558 ****
--- 556,561 ----
#endif
+ /* FIXME: this should really be defined in some more generic place */
+ #define ROUND(V, A) (((((unsigned) (V))-1) | ((A)-1))+1)
+
#endif /* __JAVA_JVM_H__ */