Recently, gij was changed to re-exec itself after resetting its own LD_LIBRARY_PATH.
This change almost doubles the time needed to execute "Hello World", from 0.13s to 0.25s on my system (and compared to 0.08s for the Sun VM). The reason is that since gij is linked against libgcj.so, the linker's work is being done twice as libgcj is loaded twice. Instead, we could dlopen() libgcj only on the second invocation of gij. This may require some cleanups to avoid accessing libgcj methods/symbols during the first gij invocation, before the dlopen() occurs. -- Summary: gij should dlopen() libgcj Product: gcc Version: 2.95 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mckinlay at redhat dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27938