-
Bug
-
Resolution: Fixed
-
P2
-
5.0
-
tiger
-
generic
-
generic
This is a solaris only issue, and involves possible j2se performance of
certain non-VM native libraries.
Part of bug fix 4880658 was the removal of -xF option for everybody, but
it also removed it for a few libraries that were using it to reorder their
functions for performance. (They add reorder lists to the 'ld' mapfile
at build time, assuming the .o files were compiled with -xF).
Since the Solaris 'ld' doesn't give fatal errors when names are mentioned in
it's -M input file, I failed to see this problem, I had assumed 'ld' would
bark if it encountered missing symbols in the mapfile, I was wrong.
It appears 'ld' was emitting lots of warnings and I failed to see them
in my build logs.
There are lots of reorder lists for lots of native libraries built by the j2se
workspace, actually a set of reorder lists, one for each Solaris build, e.g.
sparc, sparcv9, i586. (see make/sun/jpeg/reorder* as examples).
Many of these reorder lists are unused, and when used, are only used in
the optimized builds.
The used reorder lists I found were for these libraries:
libjava, libhpi, libverify, libzip. libjpeg, libawt
My recommended fix is to make sure that when the rules for adding a
mapfile to the link options are seen in make/common/Mapfile-vers.gmk,
to make sure that the compiler option -xF is in the compile options.
I would have liked to turn on some 'ld' option to make the errors in
mapfiles be fatal, but I could find no such option at this time.
I'm not sure the builds have a goal of being 'warning free' or not.
-kto
###@###.### 2003-06-25
certain non-VM native libraries.
Part of bug fix 4880658 was the removal of -xF option for everybody, but
it also removed it for a few libraries that were using it to reorder their
functions for performance. (They add reorder lists to the 'ld' mapfile
at build time, assuming the .o files were compiled with -xF).
Since the Solaris 'ld' doesn't give fatal errors when names are mentioned in
it's -M input file, I failed to see this problem, I had assumed 'ld' would
bark if it encountered missing symbols in the mapfile, I was wrong.
It appears 'ld' was emitting lots of warnings and I failed to see them
in my build logs.
There are lots of reorder lists for lots of native libraries built by the j2se
workspace, actually a set of reorder lists, one for each Solaris build, e.g.
sparc, sparcv9, i586. (see make/sun/jpeg/reorder* as examples).
Many of these reorder lists are unused, and when used, are only used in
the optimized builds.
The used reorder lists I found were for these libraries:
libjava, libhpi, libverify, libzip. libjpeg, libawt
My recommended fix is to make sure that when the rules for adding a
mapfile to the link options are seen in make/common/Mapfile-vers.gmk,
to make sure that the compiler option -xF is in the compile options.
I would have liked to turn on some 'ld' option to make the errors in
mapfiles be fatal, but I could find no such option at this time.
I'm not sure the builds have a goal of being 'warning free' or not.
-kto
###@###.### 2003-06-25