This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [PATCH] Add ABI baseline for s390x-*-linux*
Ulrich Weigand writes:
> Matthias Klose wrote:
> > Ulrich Weigand writes:
> > > > Benjamin Kosnik wrote:
> > > > > >Interestingly enough, the 3.4.0 baseline I built also has 7 symbols
> > > > > >more than your version. I don't understand either why there's a
> > > > > >difference ...
> > > > >
> > > > > Are the extra symbols similar to the ones referenced here:
> > > > >
> > > > > http://gcc.gnu.org/ml/libstdc++/2004-06/msg00269.html
> > > >
> > > > Yes, it's the exact same set.
> > >
> > > Any news on this issue? Is the patch OK now or should I do some
> > > further investigations (which?)?
> >
> > If you have access to a Debian s390-linux chroot (sarge/unstable),
> > please try to reproduce the results in this chroot. Maybe Gerhard Tonn
> > could be helpful, I currently don't have access to s390-linux.
>
> I don't have access to a Debian install currently, but I've downloaded
> the sarge packages (libstdc++6_3.4.1-4sarge1_s390.deb etc.) and looked
> at the binary images.
>
> These look quite weird: the libstd++.a file contains the symbols
> we're talking about, in the correct object io-inst.o. However,
> the symbols are missing from the libstdc++.so shared library,
> even though the *code* for the functions is in fact present in
> the library, as evident from looking at the disassembly. The
> entry point is simply not exported. (The package was stripped,
> so I don't know whether the debug symbol would have been present
> or not.)
3.4.2 and -dbg packages are available at
http://http.us.debian.org/debian/pool/main/g/gcc-3.4/ , i.e.
http://http.us.debian.org/debian/pool/main/g/gcc-3.4/libstdc++6-dbg_3.4.1-4sarge1_s390.deb
http://http.us.debian.org/debian/pool/main/g/gcc-3.4/libstdc++6-dbg_3.4.2-2_s390.deb
the first one built with binutils 2.14.90.0.7, the latter using 2.15.
comparing the exported symbols:
-00xxxxxx l d .sbss 00xxxxxx
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdC1Ev
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdD1Ev
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdC2EPSt15basic_streambufIcSt11char_traitsIcEE
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdD2Ev
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdC2Ev
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdC1EPSt15basic_streambufIcSt11char_traitsIcEE
+00xxxxxx w DF .text 00xxxxxx GLIBCXX_3.4 _ZNSdD0Ev
> In any case, according to the version script these symbols *should*
> have been exported, and they are exported on my system, so at present
> my guess would be some binutils issue on your build system ...
Yes, looks like I have to recheck the 3.4.0 baselines with binutils-2.15.
Matthias