version typeinfo for 128bit types

H.J. Lu hjl.tools@gmail.com
Sat Jan 16 22:56:00 GMT 2016


On Mon, Apr 14, 2014 at 2:39 AM, Marc Glisse <marc.glisse@inria.fr> wrote:
> Hello,
>
> this is a follow-up for this patch:
> http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00618.html
>
> once committed, g++ will generate typeinfo for __float128, and it needs
> versioning. While there, I noticed that __int128 has "typeinfo" but not
> "typeinfo name", so I am adding it. I manually checked that the new symbols
> were exactly the 12 I expected, with the new version number.
>
> I did not test the gnu-versioned-namespace version.
>
> I manually updated baseline for x86_64. It is awfully inconvenient to do. I
> was expecting "make new-abi-baseline" to generate it for me, but it gives me
> plenty of extra symbols compared to the current one. Some random examples:
>
> FUNC:_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_PKS3_@@GLIBCXX_3.4
> FUNC:_ZSt8distanceIPKcENSt15iterator_traitsIT_E15difference_typeES3_S3_@@GLIBCXX_3.4
> FUNC:_ZSt19__iterator_categoryIPKmENSt15iterator_traitsIT_E17iterator_categoryERKS3_@@GLIBCXX_3.4
> FUNC:_ZSt13__check_facetISt7codecvtIwc11__mbstate_tEERKT_PS4_@@GLIBCXX_3.4
> FUNC:_ZSt13__check_facetISt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEERKT_PS7_@@GLIBCXX_3.4
> FUNC:_ZNSt9exceptionC1Ev@@GLIBCXX_3.4
> FUNC:_ZNSt8iteratorISt18input_iterator_tagclPcRcEC1Ev@@GLIBCXX_3.4
> FUNC:_ZNSt8ios_base4setfESt13_Ios_FmtflagsS0_@@GLIBCXX_3.4
> FUNC:_ZNSt7complexIfEC1Eff@@GLIBCXX_3.4
> FUNC:_ZNSt6chrono13duration_castINS_8durationIlSt5ratioILl1ELl1000000000EEEElS2_ILl1ELl1EEEENSt9enable_ifIXsrNS_13__is_durationIT_EE5valueES8_E4typeERKNS1_IT0_T1_EE@@GLIBCXX_3.4
> FUNC:_ZNSt20bad_array_new_lengthC2Ev@@CXXABI_1.3.8
> FUNC:_ZNSt14numeric_limitsIdE8infinityEv@@GLIBCXX_3.4
> FUNC:_ZN10__cxxabiv117__class_type_info16__dyncast_resultC1Ei@@CXXABI_1.3
>
> etc.
>
>
> Bootstrap+testsuite on x86_64-linux-gnu.
>
> 2014-04-14  Marc Glisse  <marc.glisse@inria.fr>
>
>         PR libstdc++/43622
>         * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
>         * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
>         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
>

I checked this long overdue patch into trunk and will backport
it to GCC 5.

H.J.
---
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 4f16875..9690193 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2016-01-16  H.J. Lu  <hongjiu.lu@intel.com>
+
+ * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
+ __int128 symbols.
+
 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>

  PR libstdc++/69293
diff --git a/libstdc++-v3/config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt
b/libstdc++-v3/config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt
index 67b1f3e..6bc4a4b 100644
--- a/libstdc++-v3/config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt
+++ b/libstdc++-v3/config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt
@@ -4618,6 +4618,8 @@ OBJECT:2:_ZTSi@@CXXABI_1.3
 OBJECT:2:_ZTSj@@CXXABI_1.3
 OBJECT:2:_ZTSl@@CXXABI_1.3
 OBJECT:2:_ZTSm@@CXXABI_1.3
+OBJECT:2:_ZTSn@@CXXABI_1.3.9
+OBJECT:2:_ZTSo@@CXXABI_1.3.9
 OBJECT:2:_ZTSs@@CXXABI_1.3
 OBJECT:2:_ZTSt@@CXXABI_1.3
 OBJECT:2:_ZTSv@@CXXABI_1.3
@@ -4711,6 +4713,8 @@ OBJECT:3:_ZTSPi@@CXXABI_1.3
 OBJECT:3:_ZTSPj@@CXXABI_1.3
 OBJECT:3:_ZTSPl@@CXXABI_1.3
 OBJECT:3:_ZTSPm@@CXXABI_1.3
+OBJECT:3:_ZTSPn@@CXXABI_1.3.9
+OBJECT:3:_ZTSPo@@CXXABI_1.3.9
 OBJECT:3:_ZTSPs@@CXXABI_1.3
 OBJECT:3:_ZTSPt@@CXXABI_1.3
 OBJECT:3:_ZTSPv@@CXXABI_1.3
@@ -5116,6 +5120,8 @@ OBJECT:4:_ZTSPKi@@CXXABI_1.3
 OBJECT:4:_ZTSPKj@@CXXABI_1.3
 OBJECT:4:_ZTSPKl@@CXXABI_1.3
 OBJECT:4:_ZTSPKm@@CXXABI_1.3
+OBJECT:4:_ZTSPKn@@CXXABI_1.3.9
+OBJECT:4:_ZTSPKo@@CXXABI_1.3.9
 OBJECT:4:_ZTSPKs@@CXXABI_1.3
 OBJECT:4:_ZTSPKt@@CXXABI_1.3
 OBJECT:4:_ZTSPKv@@CXXABI_1.3



More information about the Libstdc++ mailing list