diff options
author | Benjamin Kosnik <bkoz@gcc.gnu.org> | 2008-04-10 20:26:45 +0000 |
---|---|---|
committer | Benjamin Kosnik <bkoz@gcc.gnu.org> | 2008-04-10 20:26:45 +0000 |
commit | d466a7e21c61360550e04a66dcd2cacd5172d672 (patch) | |
tree | dc0bf9fb108791fffd3d1c8bee85cb81446f702c /libstdc++-v3/config | |
parent | 4514bed67d02fb39eeab73eb029e3860a21b3d3a (diff) | |
download | gcc-d466a7e21c61360550e04a66dcd2cacd5172d672.zip gcc-d466a7e21c61360550e04a66dcd2cacd5172d672.tar.gz gcc-d466a7e21c61360550e04a66dcd2cacd5172d672.tar.bz2 |
[multiple changes]
2008-04-10 Benjamin Kosnik <bkoz@redhat.com>
* include/c_global/cstdatomic: C++ types only, format, doxygen markup.
* include/c_compatibility/stdatomic.h: "C" only, format, doxygen markup.
* src/atomic.c: Format, doxygen markup, edits.
* include/Makefile.am (cstdatomic, stdatomic.h): Add.
* src/Makefile.am (atomic.c): Add.
* acinclude.m4 (GLIBCXX_CHECK_STANDARD_LAYOUT): New.
* configure.ac: Call it.
* include/Makefile.in: Regenerate.
* src/Makefile.in: Same.
* Makefile.in: Same.
* doc/Makefile.in: Same.
* po/Makefile.in: Same.
* libmath/Makefile.in: Same.
* include/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* config.h.in: Same.
* configure: Same.
* config/abi/pre/gnu.ver: Add atomics exports.
* include/ext/typelist.h (apply_generator): New.
* include/bits/c++config (_GLIBCXX_BEGIN_EXTERN_C): New.
(_GLIBCXX_END_EXTERN_C): New.
Deal with _GLIBCXX_BEGIN_NAMESPACE, _GLIBCXX_END_NAMESPACE when
compiling as C.
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Add -L
flag for libstdc++.
* testsuite/util/testsuite_common_types.h (integral_types): New
typelist.
(atomics, atomics_tl): Same.
(assignable, default_constructible, copy_constructible,
explicit_value_constructible): New.
* testsuite/17_intro/headers/c++200x/all.cc: Test new headers.
* testsuite/29_atomics: New.
* testsuite/29_atomics/atomic_address: Same.
* testsuite/29_atomics/atomic_address/cons: Same.
* testsuite/29_atomics/atomic_address/cons/explicit_value.cc: Same.
* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/default.cc: Same.
* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_flag: Same.
* testsuite/29_atomics/atomic_flag/cons: Same.
* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_flag/requirements: Same.
* testsuite/29_atomics/atomic_flag/requirements/standard_layout.cc:
Same.
* testsuite/29_atomics/atomic_flag/
atomic_global_fence_compatibility.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
* testsuite/29_atomics/headers: Same.
* testsuite/29_atomics/headers/cstdatomic: Same.
* testsuite/29_atomics/headers/cstdatomic/types_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/cstdatomic/functions_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/cstdatomic/std_c++0x_neg.cc: Same.
* testsuite/29_atomics/headers/cstdatomic/macros.cc: Same.
* testsuite/29_atomics/headers/stdatomic.h: Same.
* testsuite/29_atomics/headers/stdatomic.h/macros.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/types.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/functions.c: Same.
* testsuite/29_atomics/atomic: Same.
* testsuite/29_atomics/atomic/cons: Same.
* testsuite/29_atomics/atomic/cons/explicit_value.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/default.cc: Same.
* testsuite/29_atomics/atomic/requirements: Same.
* testsuite/29_atomics/atomic/requirements/explicit_instantiation: Same.
* testsuite/29_atomics/atomic/requirements/explicit_instantiation/
1.cc: Same.
2008-04-10 Lawrence Crowl <crowl@google.com>
* include/c_global/cstdatomic: New.
* include/c_compatibility/stdatomic.h: New.
* src/atomic.c: New.
From-SVN: r134174
Diffstat (limited to 'libstdc++-v3/config')
-rw-r--r-- | libstdc++-v3/config/abi/pre/gnu.ver | 88 |
1 files changed, 64 insertions, 24 deletions
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 1d35bfb..3e5a924 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -26,7 +26,11 @@ GLIBCXX_3.4 { # Names inside the 'extern' block are demangled names. extern "C++" { - std::[A-Za]*; + std::[A-Z]*; + std::a[a-c]*; + std::ad[a-n]*; + std::ad[p-z]*; + std::a[e-z]*; # std::ba[a-r]*; std::basic_[a-e]*; std::basic_f[a-r]*; @@ -61,7 +65,9 @@ GLIBCXX_3.4 { std::c[i-s]*; std::c[u-z]*; # std::[d-g]*; - std::[d-e]*; + std::d[a-d]*; + std::d[f-z]*; + std::e*; std::gslice*; std::h[^a]*; std::i[a-n]*; @@ -120,7 +126,6 @@ GLIBCXX_3.4 { std::_List_node_base::unhook*; std::_List_node_base::reverse*; std::_List_node_base::transfer*; - std::__throw_*; std::__timepunct*; std::__numeric_limits_base*; std::__num_base::_S_format_float*; @@ -135,23 +140,6 @@ GLIBCXX_3.4 { # Names not in an 'extern' block are mangled names. - # __gnu_debug::_Safe_sequence_base and _Safe_iterator_base - _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv; - _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv; - _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv; - _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_; - _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb; - _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv; - _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv; - _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_; - - # __gnu_debug::_Error_formatter - _ZNK11__gnu_debug16_Error_formatter10_M_message*; - _ZNK11__gnu_debug16_Error_formatter10_Parameter*; - _ZNK11__gnu_debug16_Error_formatter13_M_print_word*; - _ZNK11__gnu_debug16_Error_formatter15_M_print_string*; - _ZNK11__gnu_debug16_Error_formatter8_M_error*; - # std::string _ZNSsC*; _ZNSsD*; @@ -436,6 +424,39 @@ GLIBCXX_3.4 { _ZN10__gnu_norm15_List_node_base7reverseEv; _ZN10__gnu_norm15_List_node_base8transfer*; + # __gnu_debug::_Safe_sequence_base and _Safe_iterator_base + _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv; + _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv; + _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv; + _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_; + _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb; + _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv; + _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv; + _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_; + + # __gnu_debug::_Error_formatter + _ZNK11__gnu_debug16_Error_formatter10_M_message*; + _ZNK11__gnu_debug16_Error_formatter10_Parameter*; + _ZNK11__gnu_debug16_Error_formatter13_M_print_word*; + _ZNK11__gnu_debug16_Error_formatter15_M_print_string*; + _ZNK11__gnu_debug16_Error_formatter8_M_error*; + + # exceptions as functions + _ZSt16__throw_bad_castv; + _ZSt17__throw_bad_allocv; + _ZSt18__throw_bad_typeidv; + _ZSt19__throw_ios_failurePKc; + _ZSt19__throw_logic_errorPKc; + _ZSt19__throw_range_errorPKc; + _ZSt20__throw_domain_errorPKc; + _ZSt20__throw_length_errorPKc; + _ZSt20__throw_out_of_rangePKc; + _ZSt21__throw_bad_exceptionv; + _ZSt21__throw_runtime_errorPKc; + _ZSt22__throw_overflow_errorPKc; + _ZSt23__throw_underflow_errorPKc; + _ZSt24__throw_invalid_argumentPKc; + # operator new(size_t) _Znw[jm]; # operator new(size_t, std::nothrow_t const&) @@ -464,7 +485,10 @@ GLIBCXX_3.4 { # _ZTVSt[0-9][0-9][A-Za-z]*; _ZTVSt[0-9][0-9][A-Z]*; _ZTVSt[0-9][0-9][a-d]*; - _ZTVSt[0-9][0-9][f-r]*; + _ZTVSt[0-9][0-9][f-k]*; + _ZTVSt11logic_error; + _ZTVSt12length_error; + _ZTVSt[0-9][0-9][m-r]*; _ZTVSt[0-9][0-9][t-z]*; _ZTVSt[0-9][0-9]e[^r]*; _ZTVSt[0-9][0-9]s[^y]*; @@ -484,7 +508,10 @@ GLIBCXX_3.4 { # _ZTISt[0-9][0-9][A-Za-z]*; _ZTISt[0-9][0-9][A-Z]*; _ZTISt[0-9][0-9][a-d]*; - _ZTISt[0-9][0-9][f-r]*; + _ZTISt[0-9][0-9][f-k]*; + _ZTISt11logic_error; + _ZTISt12length_error; + _ZTISt[0-9][0-9][m-r]*; _ZTISt[0-9][0-9][t-z]*; _ZTISt[0-9][0-9]e[^r]*; _ZTISt[0-9][0-9]s[^y]*; @@ -508,7 +535,10 @@ GLIBCXX_3.4 { # _ZTSSt[0-9][0-9][A-Za-z]*; _ZTSSt[0-9][0-9][A-Z]*; _ZTSSt[0-9][0-9][a-d]*; - _ZTSSt[0-9][0-9][f-r]*; + _ZTSSt[0-9][0-9][f-k]*; + _ZTSSt11logic_error; + _ZTSSt12length_error; + _ZTSSt[0-9][0-9][m-r]*; _ZTSSt[0-9][0-9][t-z]*; _ZTSSt[0-9][0-9]e[^r]*; _ZTSSt[0-9][0-9]s[^y]*; @@ -785,13 +815,23 @@ GLIBCXX_3.4.10 { _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE6stosscEv; - _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4syncEv; _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE[5-9CD]*; } GLIBCXX_3.4.9; GLIBCXX_3.4.11 { + + # atomic + __atomic_flag_for_address; + __atomic_flag_wait_explicit; + atomic_flag_clear; + atomic_flag_clear_explicit; + atomic_flag_fence; + atomic_flag_test_and_set; + atomic_flag_test_and_set_explicit; + atomic_global_fence_compatibility; + # system_error _ZSt15system_category; |