This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Speedup gij/libjava loading on darwin


Geoff Keating wrote:

On 19/08/2005, at 11:48 PM, Andreas Tobler wrote:


Geoffrey Keating wrote:

Andrew Pinski <pinskia@physics.uc.edu> writes:

    * Makefile.am (extra_ldflags_libjava): New variable to
    substitute in.
    (LIBLINK): Add extra_ldflags_libjava to it.
    * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
    "-Wl,-single_module".

This is OK.


I'm not very happy with this patch. I already mentioned it to Andrew. Here on tiger 10.4.2 the situation gets worse. See the figures below. Would you agree to do this change only for darwin7*?

Index: configure.ac
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.ac,v
retrieving revision 1.36
diff -u -r1.36 configure.ac
--- configure.ac        19 Aug 2005 05:14:11 -0000      1.36
+++ configure.ac        20 Aug 2005 06:45:40 -0000
@@ -670,7 +670,7 @@

# extra LD Flags which are required for targets
case "${host}" in
- *-darwin*)
+ *-darwin7*)
# on Darwin -single_module speeds up loading of the dynamic libraries.
extra_ldflags_libjava=-Wl,-single_module
;;


Afaik, the dyld and co got rewritten in tiger and now we have a slow down. Maybe ld needs a rewrite too?


Here the figures :)


That's not supposed to happen! Yes, this was unexpected, let's go back to multi-module on darwin8+ at least until we can work out what the problem is.

This would be the mod I'd like to commit. Thanks to Andrew to catch all darwins below 8 ;)


Ok for main ?

Andreas

2005-08-20 Andreas Tobler <a.tobler@schweiz.ch>

	* configure.ac (extra_ldflags_libjava): Enable -single_module only for
	darwin < 8.
	* configure: Regenerate.

Index: configure.ac
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.ac,v
retrieving revision 1.36
diff -u -r1.36 configure.ac
--- configure.ac        19 Aug 2005 05:14:11 -0000      1.36
+++ configure.ac        20 Aug 2005 21:50:13 -0000
@@ -670,7 +670,9 @@

 # extra LD Flags which are required for targets
 case "${host}" in
-  *-darwin*)
+*-*-darwin[0-7].*)
+    # For now we have to disable it on darwin[8-9] because it slows down
+    # the linking phase. A possible bug in ld?
     # on Darwin -single_module speeds up loading of the dynamic libraries.
     extra_ldflags_libjava=-Wl,-single_module
     ;;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]