libstdc++: Update ppc64le baseline_symbols.txt
authorJakub Jelinek <jakub@redhat.com>
Tue, 20 Apr 2021 10:48:12 +0000 (12:48 +0200)
committerJakub Jelinek <jakub@redhat.com>
Tue, 20 Apr 2021 10:48:12 +0000 (12:48 +0200)
commit96de14f46f13201abab6fa86fb6fcaf6f03d246d
treed14b357b6f101f4e8eca6d652b1e7d315f7de9b0
parente265278a3bd54210a4a560c2bd216a629f91a11b
libstdc++: Update ppc64le baseline_symbols.txt

> Tested on powerpc64{,le}-linux now (-m32/-m64 on be) and while the first
> patch works fine, the second one unfortunately doesn't on either be or le,
> so more work is needed there.

Here are the needed changes to make it work.
For symbols with _LDBL_ substring in version name we already have code to
ignore those if no such symbols appear (but it is slightly incorrect, see
below).
So, this patch does the same thing for symbol versions with _IEEE128_
substring.
The previously incorrectly handled case is that in addition to
FUNC:_ZNKSt17__gnu_cxx_ieee1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@@GLIBCXX_IEEE128_3.4.29
or
OBJECT:12:_ZTSu9__ieee128@@CXXABI_IEEE128_1.3.13
cases we also have the
OBJECT:0:CXXABI_IEEE128_1.3.13
OBJECT:0:GLIBCXX_IEEE128_3.4.29
cases, which have empty version_name and the name is in that case the
symbol version.  Those need to be ignored too.

2021-04-20  Jakub Jelinek  <jakub@redhat.com>

* testsuite/util/testsuite_abi.cc (compare_symbols): If any symbol
versions with _IEEE128_ substring are found, set ieee_version_found
to true.  Ignore missing symbols with _IEEE128_ in version name if
!ieee_version_found.  Use i->first as version_name instead of
i->second.version_name if the latter is empty.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
libstdc++-v3/config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt
libstdc++-v3/testsuite/util/testsuite_abi.cc