From 544be2beb1fa53dfdd6988418ad3b365c289536d Mon Sep 17 00:00:00 2001
From: Jonathan Wakely
Date: Mon, 13 May 2019 11:50:21 +0100
Subject: [PATCH] Remove Profile Mode, deprecated since GCC 7.1
The Profile Mode extension is not used by anybody, nor maintained by
anybody. The containers do not support the full API specified in recent
standards, and so enabling Profile Mode is not source compatible with
much modern C++ code. The heuristics that would check the profile
information and make useful suggestions never materialized, so it isn't
useful.
It should be removed.
Remove Profile Mode, deprecated since 7.1.0
* doc/Makefile.am: Remove XML file for profile mode docs.
* doc/Makefile.in: Regenerate.
* doc/xml/authors.xml: Remove authors of profile mode docs.
* doc/xml/manual/appendix_contributing.xml: Remove mention of profile
mode.
* doc/xml/manual/debug.xml: Likewise.
* doc/xml/manual/evolution.xml: Document removal of profile mode.
* doc/xml/manual/profile_mode.xml: Remove profile mode docs.
* doc/xml/manual/spine.xml: Remove profile mode author credit.
* doc/xml/manual/test.xml: Remove docs for dg-require-profile-mode
directive.
* doc/xml/manual/using.xml: Remove docs for profile mode headers and
macro.
* doc/html/*: Regenerate.
* include/Makefile.am: Remove profile mode headers.
* include/Makefile.in: Regenerate.
* include/bits/c++config (std::__profile): Remove namespace.
[_GLIBCXX_PROFILE]: Remove checks for macro.
* include/profile/array: Remove.
* include/profile/base.h: Remove.
* include/profile/bitset: Remove.
* include/profile/deque: Remove.
* include/profile/forward_list: Remove.
* include/profile/impl/profiler.h: Remove.
* include/profile/impl/profiler_algos.h: Remove.
* include/profile/impl/profiler_container_size.h: Remove.
* include/profile/impl/profiler_hash_func.h: Remove.
* include/profile/impl/profiler_hashtable_size.h: Remove.
* include/profile/impl/profiler_list_to_slist.h: Remove.
* include/profile/impl/profiler_list_to_vector.h: Remove.
* include/profile/impl/profiler_map_to_unordered_map.h: Remove.
* include/profile/impl/profiler_node.h: Remove.
* include/profile/impl/profiler_state.h: Remove.
* include/profile/impl/profiler_trace.h: Remove.
* include/profile/impl/profiler_vector_size.h: Remove.
* include/profile/impl/profiler_vector_to_list.h: Remove.
* include/profile/iterator_tracker.h: Remove.
* include/profile/list: Remove.
* include/profile/map: Remove.
* include/profile/map.h: Remove.
* include/profile/multimap.h: Remove.
* include/profile/multiset.h: Remove.
* include/profile/ordered_base.h: Remove.
* include/profile/set: Remove.
* include/profile/set.h: Remove.
* include/profile/unordered_base.h: Remove.
* include/profile/unordered_map: Remove.
* include/profile/unordered_set: Remove.
* include/profile/vector: Remove.
* scripts/run_doxygen: Do not process profile mode headers.
* testsuite/23_containers/array/element_access/60497.cc: Don't use
profile mode type.
* testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
Remove dg-skip-if for profile mode.
* testsuite/23_containers/forward_list/capacity/1.cc: Remove
preprocessor check for profile mode.
* testsuite/23_containers/list/capacity/29134.cc: Likewise.
* testsuite/23_containers/map/modifiers/extract.cc: Remove dg-skip-if
for profile mode.
* testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
Likewise.
* testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
* testsuite/23_containers/multimap/modifiers/extract.cc: Likewise.
* testsuite/23_containers/multiset/modifiers/extract.cc: Likewise.
* testsuite/23_containers/set/modifiers/extract.cc: Likewise.
* testsuite/23_containers/unordered_map/modifiers/extract.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
Likewise.
* testsuite/23_containers/unordered_set/modifiers/extract.cc:
Likewise.
* testsuite/23_containers/vector/bool/capacity/29134.cc: Remove
preprocessor check for profile mode.
* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
Likewise.
* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
Remove dg-skip-if for profile mode.
* testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
* testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
* testsuite/25_algorithms/lexicographical_compare/71545.cc: Likewise.
* testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
* testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
* testsuite/Makefile.am: Remove profile_flags variable and
* testsuite/Makefile.am: Remove profile_flags variable and
check-profile target.
* testsuite/Makefile.in: Regenerate.
* testsuite/ext/profile/all.cc: Remove.
* testsuite/ext/profile/mutex_extensions_neg.cc: Remove.
* testsuite/ext/profile/profiler_algos.cc: Remove.
* testsuite/ext/profile/replace_new.cc: Remove.
* testsuite/ext/throw_allocator/deallocate_global.cc: Remove
preprocessor check for profile mode.
* testsuite/ext/throw_allocator/deallocate_local.cc: Likewise.
* testsuite/lib/libstdc++.exp (check_v3_target_profile_mode): Remove.
(check_v3_target_normal_mode): Do not check for profile mode macro.
* testsuite/libstdc++-prettyprinters/80276.cc: Remove dg-skip-if for
profile mode.
* testsuite/libstdc++-prettyprinters/compat.cc: Likewise.
* testsuite/libstdc++-prettyprinters/cxx11.cc: Likewise.
* testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
* testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
* testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
* testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
* testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
* testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
* testsuite/libstdc++-prettyprinters/whatis2.cc: Likewise.
From-SVN: r271120
---
libstdc++-v3/ChangeLog | 111 ++
libstdc++-v3/doc/Makefile.am | 1 -
libstdc++-v3/doc/Makefile.in | 1 -
libstdc++-v3/doc/html/index.html | 8 +-
libstdc++-v3/doc/html/manual/api.html | 4 +-
libstdc++-v3/doc/html/manual/appendix.html | 2 +-
.../doc/html/manual/appendix_porting.html | 2 +-
.../doc/html/manual/bitmap_allocator.html | 4 +-
.../html/manual/bitmap_allocator_impl.html | 6 +-
libstdc++-v3/doc/html/manual/bugs.html | 22 +-
libstdc++-v3/doc/html/manual/debug.html | 5 +-
.../doc/html/manual/ext_algorithms.html | 6 +-
.../doc/html/manual/ext_concurrency.html | 6 +-
.../doc/html/manual/ext_concurrency_impl.html | 4 +-
.../doc/html/manual/ext_concurrency_use.html | 2 +-
.../doc/html/manual/ext_containers.html | 4 +-
.../doc/html/manual/ext_demangling.html | 6 +-
libstdc++-v3/doc/html/manual/ext_io.html | 6 +-
.../doc/html/manual/ext_iterators.html | 6 +-
.../doc/html/manual/ext_numerics.html | 6 +-
libstdc++-v3/doc/html/manual/ext_sgi.html | 4 +-
.../doc/html/manual/ext_utilities.html | 6 +-
libstdc++-v3/doc/html/manual/extensions.html | 4 +-
libstdc++-v3/doc/html/manual/index.html | 26 +-
libstdc++-v3/doc/html/manual/intro.html | 2 +-
libstdc++-v3/doc/html/manual/io_and_c.html | 2 +-
libstdc++-v3/doc/html/manual/memory.html | 17 +-
.../doc/html/manual/mt_allocator.html | 6 +-
.../doc/html/manual/mt_allocator_design.html | 4 +-
.../html/manual/mt_allocator_ex_multi.html | 4 +-
.../html/manual/mt_allocator_ex_single.html | 2 +-
.../doc/html/manual/mt_allocator_impl.html | 2 +-
.../doc/html/manual/parallel_mode_test.html | 4 +-
.../policy_based_data_structures_test.html | 2 +-
.../html/manual/policy_data_structures.html | 16 +-
.../manual/policy_data_structures_ack.html | 4 +-
.../manual/policy_data_structures_design.html | 70 +-
.../manual/policy_data_structures_using.html | 6 +-
.../doc/html/manual/source_organization.html | 4 +-
libstdc++-v3/doc/html/manual/status.html | 6 +-
libstdc++-v3/doc/html/manual/test.html | 5 +-
libstdc++-v3/doc/html/manual/using.html | 2 +-
.../doc/html/manual/using_headers.html | 2 +-
.../doc/html/manual/using_macros.html | 3 -
libstdc++-v3/doc/xml/authors.xml | 6 -
.../doc/xml/manual/appendix_contributing.xml | 4 +-
libstdc++-v3/doc/xml/manual/debug.xml | 8 -
libstdc++-v3/doc/xml/manual/evolution.xml | 8 +-
libstdc++-v3/doc/xml/manual/extensions.xml | 6 -
libstdc++-v3/doc/xml/manual/profile_mode.xml | 1718 -----------------
libstdc++-v3/doc/xml/manual/spine.xml | 6 -
libstdc++-v3/doc/xml/manual/test.xml | 8 +-
libstdc++-v3/doc/xml/manual/using.xml | 38 -
libstdc++-v3/include/Makefile.am | 57 +-
libstdc++-v3/include/Makefile.in | 59 +-
libstdc++-v3/include/bits/c++config | 19 +-
libstdc++-v3/include/profile/array | 281 ---
libstdc++-v3/include/profile/base.h | 58 -
libstdc++-v3/include/profile/bitset | 245 ---
libstdc++-v3/include/profile/deque | 188 --
libstdc++-v3/include/profile/forward_list | 219 ---
libstdc++-v3/include/profile/impl/profiler.h | 370 ----
.../include/profile/impl/profiler_algos.h | 111 --
.../profile/impl/profiler_container_size.h | 186 --
.../include/profile/impl/profiler_hash_func.h | 153 --
.../profile/impl/profiler_hashtable_size.h | 100 -
.../profile/impl/profiler_list_to_slist.h | 168 --
.../profile/impl/profiler_list_to_vector.h | 261 ---
.../impl/profiler_map_to_unordered_map.h | 275 ---
.../include/profile/impl/profiler_node.h | 155 --
.../include/profile/impl/profiler_state.h | 69 -
.../include/profile/impl/profiler_trace.h | 663 -------
.../profile/impl/profiler_vector_size.h | 100 -
.../profile/impl/profiler_vector_to_list.h | 261 ---
.../include/profile/iterator_tracker.h | 286 ---
libstdc++-v3/include/profile/list | 650 -------
libstdc++-v3/include/profile/map | 35 -
libstdc++-v3/include/profile/map.h | 705 -------
libstdc++-v3/include/profile/multimap.h | 663 -------
libstdc++-v3/include/profile/multiset.h | 647 -------
libstdc++-v3/include/profile/ordered_base.h | 100 -
libstdc++-v3/include/profile/set | 35 -
libstdc++-v3/include/profile/set.h | 628 ------
libstdc++-v3/include/profile/unordered_base.h | 308 ---
libstdc++-v3/include/profile/unordered_map | 586 ------
libstdc++-v3/include/profile/unordered_set | 561 ------
libstdc++-v3/include/profile/vector | 572 ------
libstdc++-v3/scripts/run_doxygen | 8 -
.../array/element_access/60497.cc | 4 -
.../specialized_algorithms/swap_cxx17.cc | 1 -
.../23_containers/forward_list/capacity/1.cc | 2 +-
.../23_containers/list/capacity/29134.cc | 6 +-
.../23_containers/map/modifiers/extract.cc | 1 -
.../map/modifiers/insert_or_assign/1.cc | 1 -
.../map/modifiers/try_emplace/1.cc | 1 -
.../multimap/modifiers/extract.cc | 1 -
.../multiset/modifiers/extract.cc | 1 -
.../23_containers/set/modifiers/extract.cc | 1 -
.../unordered_map/modifiers/extract.cc | 1 -
.../unordered_multimap/modifiers/extract.cc | 1 -
.../unordered_multiset/modifiers/extract.cc | 1 -
.../unordered_set/modifiers/extract.cc | 1 -
.../vector/bool/capacity/29134.cc | 2 -
.../vector/bool/modifiers/insert/31370.cc | 2 -
.../vector/modifiers/insert_vs_emplace.cc | 1 -
.../binary_search/partitioned.cc | 1 -
.../25_algorithms/equal_range/partitioned.cc | 1 -
.../lexicographical_compare/71545.cc | 1 -
.../25_algorithms/lower_bound/partitioned.cc | 1 -
.../25_algorithms/upper_bound/partitioned.cc | 1 -
libstdc++-v3/testsuite/Makefile.am | 16 +-
libstdc++-v3/testsuite/Makefile.in | 16 +-
libstdc++-v3/testsuite/ext/profile/all.cc | 52 -
.../ext/profile/mutex_extensions_neg.cc | 33 -
.../testsuite/ext/profile/profiler_algos.cc | 147 --
.../testsuite/ext/profile/replace_new.cc | 54 -
.../ext/throw_allocator/deallocate_global.cc | 2 -
.../ext/throw_allocator/deallocate_local.cc | 2 -
libstdc++-v3/testsuite/lib/libstdc++.exp | 28 +-
.../libstdc++-prettyprinters/80276.cc | 1 -
.../libstdc++-prettyprinters/compat.cc | 1 -
.../libstdc++-prettyprinters/cxx11.cc | 1 -
.../libstdc++-prettyprinters/cxx17.cc | 1 -
.../libstdc++-prettyprinters/debug.cc | 1 -
.../libstdc++-prettyprinters/debug_cxx11.cc | 1 -
.../libstdc++-prettyprinters/libfundts.cc | 1 -
.../libstdc++-prettyprinters/simple.cc | 1 -
.../libstdc++-prettyprinters/simple11.cc | 1 -
.../libstdc++-prettyprinters/whatis.cc | 1 -
.../libstdc++-prettyprinters/whatis2.cc | 1 -
130 files changed, 282 insertions(+), 12111 deletions(-)
delete mode 100644 libstdc++-v3/doc/xml/manual/profile_mode.xml
delete mode 100644 libstdc++-v3/include/profile/array
delete mode 100644 libstdc++-v3/include/profile/base.h
delete mode 100644 libstdc++-v3/include/profile/bitset
delete mode 100644 libstdc++-v3/include/profile/deque
delete mode 100644 libstdc++-v3/include/profile/forward_list
delete mode 100644 libstdc++-v3/include/profile/impl/profiler.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_algos.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_container_size.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_hash_func.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_hashtable_size.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_list_to_slist.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_list_to_vector.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_map_to_unordered_map.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_node.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_state.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_trace.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_vector_size.h
delete mode 100644 libstdc++-v3/include/profile/impl/profiler_vector_to_list.h
delete mode 100644 libstdc++-v3/include/profile/iterator_tracker.h
delete mode 100644 libstdc++-v3/include/profile/list
delete mode 100644 libstdc++-v3/include/profile/map
delete mode 100644 libstdc++-v3/include/profile/map.h
delete mode 100644 libstdc++-v3/include/profile/multimap.h
delete mode 100644 libstdc++-v3/include/profile/multiset.h
delete mode 100644 libstdc++-v3/include/profile/ordered_base.h
delete mode 100644 libstdc++-v3/include/profile/set
delete mode 100644 libstdc++-v3/include/profile/set.h
delete mode 100644 libstdc++-v3/include/profile/unordered_base.h
delete mode 100644 libstdc++-v3/include/profile/unordered_map
delete mode 100644 libstdc++-v3/include/profile/unordered_set
delete mode 100644 libstdc++-v3/include/profile/vector
delete mode 100644 libstdc++-v3/testsuite/ext/profile/all.cc
delete mode 100644 libstdc++-v3/testsuite/ext/profile/mutex_extensions_neg.cc
delete mode 100644 libstdc++-v3/testsuite/ext/profile/profiler_algos.cc
delete mode 100644 libstdc++-v3/testsuite/ext/profile/replace_new.cc
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 2869dafa810..1a9431bbbb5 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,116 @@
2019-05-11 Jonathan Wakely
+ Remove Profile Mode, deprecated since 7.1.0
+ * doc/Makefile.am: Remove XML file for profile mode docs.
+ * doc/Makefile.in: Regenerate.
+ * doc/xml/authors.xml: Remove authors of profile mode docs.
+ * doc/xml/manual/appendix_contributing.xml: Remove mention of profile
+ mode.
+ * doc/xml/manual/debug.xml: Likewise.
+ * doc/xml/manual/evolution.xml: Document removal of profile mode.
+ * doc/xml/manual/profile_mode.xml: Remove profile mode docs.
+ * doc/xml/manual/spine.xml: Remove profile mode author credit.
+ * doc/xml/manual/test.xml: Remove docs for dg-require-profile-mode
+ directive.
+ * doc/xml/manual/using.xml: Remove docs for profile mode headers and
+ macro.
+ * doc/html/*: Regenerate.
+ * include/Makefile.am: Remove profile mode headers.
+ * include/Makefile.in: Regenerate.
+ * include/bits/c++config (std::__profile): Remove namespace.
+ [_GLIBCXX_PROFILE]: Remove checks for macro.
+ * include/profile/array: Remove.
+ * include/profile/base.h: Remove.
+ * include/profile/bitset: Remove.
+ * include/profile/deque: Remove.
+ * include/profile/forward_list: Remove.
+ * include/profile/impl/profiler.h: Remove.
+ * include/profile/impl/profiler_algos.h: Remove.
+ * include/profile/impl/profiler_container_size.h: Remove.
+ * include/profile/impl/profiler_hash_func.h: Remove.
+ * include/profile/impl/profiler_hashtable_size.h: Remove.
+ * include/profile/impl/profiler_list_to_slist.h: Remove.
+ * include/profile/impl/profiler_list_to_vector.h: Remove.
+ * include/profile/impl/profiler_map_to_unordered_map.h: Remove.
+ * include/profile/impl/profiler_node.h: Remove.
+ * include/profile/impl/profiler_state.h: Remove.
+ * include/profile/impl/profiler_trace.h: Remove.
+ * include/profile/impl/profiler_vector_size.h: Remove.
+ * include/profile/impl/profiler_vector_to_list.h: Remove.
+ * include/profile/iterator_tracker.h: Remove.
+ * include/profile/list: Remove.
+ * include/profile/map: Remove.
+ * include/profile/map.h: Remove.
+ * include/profile/multimap.h: Remove.
+ * include/profile/multiset.h: Remove.
+ * include/profile/ordered_base.h: Remove.
+ * include/profile/set: Remove.
+ * include/profile/set.h: Remove.
+ * include/profile/unordered_base.h: Remove.
+ * include/profile/unordered_map: Remove.
+ * include/profile/unordered_set: Remove.
+ * include/profile/vector: Remove.
+ * scripts/run_doxygen: Do not process profile mode headers.
+ * testsuite/23_containers/array/element_access/60497.cc: Don't use
+ profile mode type.
+ * testsuite/23_containers/array/specialized_algorithms/swap_cxx17.cc:
+ Remove dg-skip-if for profile mode.
+ * testsuite/23_containers/forward_list/capacity/1.cc: Remove
+ preprocessor check for profile mode.
+ * testsuite/23_containers/list/capacity/29134.cc: Likewise.
+ * testsuite/23_containers/map/modifiers/extract.cc: Remove dg-skip-if
+ for profile mode.
+ * testsuite/23_containers/map/modifiers/insert_or_assign/1.cc:
+ Likewise.
+ * testsuite/23_containers/map/modifiers/try_emplace/1.cc: Likewise.
+ * testsuite/23_containers/multimap/modifiers/extract.cc: Likewise.
+ * testsuite/23_containers/multiset/modifiers/extract.cc: Likewise.
+ * testsuite/23_containers/set/modifiers/extract.cc: Likewise.
+ * testsuite/23_containers/unordered_map/modifiers/extract.cc:
+ Likewise.
+ * testsuite/23_containers/unordered_multimap/modifiers/extract.cc:
+ Likewise.
+ * testsuite/23_containers/unordered_multiset/modifiers/extract.cc:
+ Likewise.
+ * testsuite/23_containers/unordered_set/modifiers/extract.cc:
+ Likewise.
+ * testsuite/23_containers/vector/bool/capacity/29134.cc: Remove
+ preprocessor check for profile mode.
+ * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
+ Likewise.
+ * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc:
+ Remove dg-skip-if for profile mode.
+ * testsuite/25_algorithms/binary_search/partitioned.cc: Likewise.
+ * testsuite/25_algorithms/equal_range/partitioned.cc: Likewise.
+ * testsuite/25_algorithms/lexicographical_compare/71545.cc: Likewise.
+ * testsuite/25_algorithms/lower_bound/partitioned.cc: Likewise.
+ * testsuite/25_algorithms/upper_bound/partitioned.cc: Likewise.
+ * testsuite/Makefile.am: Remove profile_flags variable and
+ * testsuite/Makefile.am: Remove profile_flags variable and
+ check-profile target.
+ * testsuite/Makefile.in: Regenerate.
+ * testsuite/ext/profile/all.cc: Remove.
+ * testsuite/ext/profile/mutex_extensions_neg.cc: Remove.
+ * testsuite/ext/profile/profiler_algos.cc: Remove.
+ * testsuite/ext/profile/replace_new.cc: Remove.
+ * testsuite/ext/throw_allocator/deallocate_global.cc: Remove
+ preprocessor check for profile mode.
+ * testsuite/ext/throw_allocator/deallocate_local.cc: Likewise.
+ * testsuite/lib/libstdc++.exp (check_v3_target_profile_mode): Remove.
+ (check_v3_target_normal_mode): Do not check for profile mode macro.
+ * testsuite/libstdc++-prettyprinters/80276.cc: Remove dg-skip-if for
+ profile mode.
+ * testsuite/libstdc++-prettyprinters/compat.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/cxx11.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/cxx17.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/debug.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/libfundts.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/simple.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/whatis.cc: Likewise.
+ * testsuite/libstdc++-prettyprinters/whatis2.cc: Likewise.
+
Remove array_allocator extension, deprecated since 4.9.0
* doc/xml/manual/allocator.xml: Remove documentation for
array_allocator.
diff --git a/libstdc++-v3/doc/Makefile.am b/libstdc++-v3/doc/Makefile.am
index eb8251d10e3..b9aca381b74 100644
--- a/libstdc++-v3/doc/Makefile.am
+++ b/libstdc++-v3/doc/Makefile.am
@@ -336,7 +336,6 @@ xml_sources_manual = \
${xml_dir}/manual/policy_data_structures.xml \
${xml_dir}/manual/policy_data_structures_biblio.xml \
${xml_dir}/manual/prerequisites.xml \
- ${xml_dir}/manual/profile_mode.xml \
${xml_dir}/manual/shared_ptr.xml \
${xml_dir}/manual/spine.xml \
${xml_dir}/manual/status_cxx1998.xml \
diff --git a/libstdc++-v3/doc/Makefile.in b/libstdc++-v3/doc/Makefile.in
index 12be1f7e254..5fee1b2d310 100644
--- a/libstdc++-v3/doc/Makefile.in
+++ b/libstdc++-v3/doc/Makefile.in
@@ -477,7 +477,6 @@ xml_sources_manual = \
${xml_dir}/manual/policy_data_structures.xml \
${xml_dir}/manual/policy_data_structures_biblio.xml \
${xml_dir}/manual/prerequisites.xml \
- ${xml_dir}/manual/profile_mode.xml \
${xml_dir}/manual/shared_ptr.xml \
${xml_dir}/manual/spine.xml \
${xml_dir}/manual/status_cxx1998.xml \
diff --git a/libstdc++-v3/doc/html/index.html b/libstdc++-v3/doc/html/index.html
index 25447dbcefe..2b7f36070f8 100644
--- a/libstdc++-v3/doc/html/index.html
+++ b/libstdc++-v3/doc/html/index.html
@@ -23,7 +23,7 @@
Table of Contents
- The GNU C++ Library Manual
- I.
Introduction
-
- 1. Status
- Implementation Status
- C++ 1998/2003
- Implementation Status
- Implementation Specific Behavior
- C++ 2011
- Implementation Specific Behavior
- C++ 2014
- C++ 2017
- Implementation Specific Behavior
- C++ 202a
- Implementation Specific Behavior
- C++ TR1
- Implementation Specific Behavior
- C++ TR 24733
- C++ IS 29124
- Implementation Specific Behavior
- License
- The Code: GPL
- The Documentation: GPL, FDL
- Bugs
- Implementation Bugs
- Standard Bugs
- 2. Setup
- Prerequisites
- Configure
- Make
- 3. Using
- Command Options
- Headers
- Header Files
- Mixing Headers
- The C Headers and
namespace std
- Precompiled Headers
- Macros
- Dual ABI
- Troubleshooting
- Namespaces
- Available Namespaces
- namespace std
- Using Namespace Composition
- Linking
- Almost Nothing
- Finding Dynamic or Shared Libraries
- Experimental Library Extensions
- Concurrency
- Prerequisites
- Thread Safety
- Atomics
- IO
- Structure
- Defaults
- Future
- Alternatives
- Containers
- Exceptions
- Exception Safety
- Exception Neutrality
- Doing without
- Compatibility
- With
C
- With
POSIX
thread cancellation
- Debugging Support
- Using g++
- Debug Versions of Library Binary Files
- Memory Leak Hunting
- Non-memory leaks in Pool and MT allocators
- Data Race Hunting
- Using gdb
- Tracking uncaught exceptions
- Debug Mode
- Compile Time Checking
- Profile-based Performance Analysis
- II.
+
- 1. Status
- Implementation Status
- C++ 1998/2003
- Implementation Status
- Implementation Specific Behavior
- C++ 2011
- Implementation Specific Behavior
- C++ 2014
- C++ 2017
- Implementation Specific Behavior
- C++ 202a
- Implementation Specific Behavior
- C++ TR1
- Implementation Specific Behavior
- C++ TR 24733
- C++ IS 29124
- Implementation Specific Behavior
- License
- The Code: GPL
- The Documentation: GPL, FDL
- Bugs
- Implementation Bugs
- Standard Bugs
- 2. Setup
- Prerequisites
- Configure
- Make
- 3. Using
- Command Options
- Headers
- Header Files
- Mixing Headers
- The C Headers and
namespace std
- Precompiled Headers
- Macros
- Dual ABI
- Troubleshooting
- Namespaces
- Available Namespaces
- namespace std
- Using Namespace Composition
- Linking
- Almost Nothing
- Finding Dynamic or Shared Libraries
- Experimental Library Extensions
- Concurrency
- Prerequisites
- Thread Safety
- Atomics
- IO
- Structure
- Defaults
- Future
- Alternatives
- Containers
- Exceptions
- Exception Safety
- Exception Neutrality
- Doing without
- Compatibility
- With
C
- With
POSIX
thread cancellation
- Debugging Support
- Using g++
- Debug Versions of Library Binary Files
- Memory Leak Hunting
- Non-memory leaks in Pool and MT allocators
- Data Race Hunting
- Using gdb
- Tracking uncaught exceptions
- Debug Mode
- Compile Time Checking
- II.
Standard Contents
- 4.
Support
@@ -65,7 +65,7 @@
Extensions
- 16. Compile Time Checks
- 17. Debug Mode
- Intro
- Semantics
- Using
- Using the Debug Mode
- Using a Specific Debug Container
- Design
- Goals
- Methods
- The Wrapper Model
- Safe Iterators
- Safe Sequences (Containers)
- Precondition Checking
- Release- and debug-mode coexistence
- Compile-time coexistence of release- and debug-mode components
- Link- and run-time coexistence of release- and
- debug-mode components
- Alternatives for Coexistence
- Other Implementations
- 18. Parallel Mode
- Intro
- Semantics
- Using
- Prerequisite Compiler Flags
- Using Parallel Mode
- Using Specific Parallel Components
- Design
- Interface Basics
- Configuration and Tuning
- Setting up the OpenMP Environment
- Compile Time Switches
- Run Time Settings and Defaults
- Implementation Namespaces
- Testing
- Bibliography
- 19. Profile Mode
- Intro
- Using the Profile Mode
- Tuning the Profile Mode
- Design
- Wrapper Model
- Instrumentation
- Run Time Behavior
- Analysis and Diagnostics
- Cost Model
- Reports
- Testing
- Extensions for Custom Containers
- Empirical Cost Model
- Implementation Issues
- Stack Traces
- Symbolization of Instruction Addresses
- Concurrency
- Using the Standard Library in the Instrumentation Implementation
- Malloc Hooks
- Construction and Destruction of Global Objects
- Developer Information
- Big Picture
- How To Add A Diagnostic
- Diagnostics
- Diagnostic Template
- Containers
- Hashtable Too Small
- Hashtable Too Large
- Inefficient Hash
- Vector Too Small
- Vector Too Large
- Vector to Hashtable
- Hashtable to Vector
- Vector to List
- List to Vector
- List to Forward List (Slist)
- Ordered to Unordered Associative Container
- Algorithms
- Sort Algorithm Performance
- Data Locality
- Need Software Prefetch
- Linked Structure Locality
- Multithreaded Data Access
- Data Dependence Violations at Container Level
- False Sharing
- Statistics
- Bibliography
- 20. The mt_allocator
- Intro
- Design Issues
- Overview
- Implementation
- Tunable Parameters
- Initialization
- Deallocation Notes
- Single Thread Example
- Multiple Thread Example
- 21. The bitmap_allocator
- Design
- Implementation
- Free List Store
- Super Block
- Super Block Data Layout
- Maximum Wasted Percentage
allocate
deallocate
- Questions
- 1
- 2
- 3
- Locality
- Overhead and Grow Policy
- 22. Policy-Based Data Structures
- Intro
- Performance Issues
- Associative
- Priority Que
- Goals
- Associative
- Policy Choices
- Underlying Data Structures
- Iterators
- Functional
- Priority Queues
- Policy Choices
- Underlying Data Structures
- Binary Heaps
- Using
- Prerequisites
- Organization
- Tutorial
- Basic Use
-
+ debug-mode components
- Alternatives for Coexistence
- Other Implementations
- 18. Parallel Mode
- Intro
- Semantics
- Using
- Prerequisite Compiler Flags
- Using Parallel Mode
- Using Specific Parallel Components
- Design
- Interface Basics
- Configuration and Tuning
- Setting up the OpenMP Environment
- Compile Time Switches
- Run Time Settings and Defaults
- Implementation Namespaces
- Testing
- Bibliography
- 19. The mt_allocator
- Intro
- Design Issues
- Overview
- Implementation
- Tunable Parameters
- Initialization
- Deallocation Notes
- Single Thread Example
- Multiple Thread Example
- 20. The bitmap_allocator
- Design
- Implementation
- Free List Store
- Super Block
- Super Block Data Layout
- Maximum Wasted Percentage
allocate
deallocate
- Questions
- 1
- 2
- 3
- Locality
- Overhead and Grow Policy
- 21. Policy-Based Data Structures
- Intro
- Performance Issues
- Associative
- Priority Que
- Goals
- Associative
- Policy Choices
- Underlying Data Structures
- Iterators
- Functional
- Priority Queues
- Policy Choices
- Underlying Data Structures
- Binary Heaps
- Using
- Prerequisites
- Organization
- Tutorial
- Basic Use
-
Configuring via Template Parameters
-
Querying Container Attributes
@@ -127,7 +127,7 @@
Text
modify
Up
-
Text
modify
Down
-
- Observations
- Associative
- Priority_Queue
- Acknowledgments
- Bibliography
- 23. HP/SGI Extensions
- Backwards Compatibility
- Deprecated
- 24. Utilities
- 25. Algorithms
- 26. Numerics
- 27. Iterators
- 28. Input and Output
- Derived filebufs
- 29. Demangling
- 30. Concurrency
- Design
- Interface to Locks and Mutexes
- Interface to Atomic Functions
- Implementation
- Using Built-in Atomic Functions
- Thread Abstraction
- Use
- IV.
+
Observations- Associative
- Priority_Queue
AcknowledgmentsBibliography22. HP/SGI Extensions- Backwards Compatibility
- Deprecated
23. Utilities24. Algorithms25. Numerics26. Iterators27. Input and Output- Derived filebufs
28. Demangling29. Concurrency- Design
- Interface to Locks and Mutexes
- Interface to Atomic Functions
- Implementation
- Using Built-in Atomic Functions
- Thread Abstraction
- Use
IV.
Appendices
- A.
Contributing
@@ -142,7 +142,7 @@
Existing tests
-
C++11 Requirements Test Sequence Descriptions
-
ABI Policy and Guidelines- The C++ Interface
- Versioning
- Goals
- History
- Prerequisites
- Configuring
- Checking Active
- Allowed Changes
- Prohibited Changes
- Implementation
- Testing
- Single ABI Testing
- Multiple ABI Testing
- Outstanding Issues
API Evolution and Deprecation History3.0
3.1
3.2
3.3
3.4
4.0
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
5
5.3
6
7
7.2
7.3
8
9
Backwards Compatibility- First
- No
ios_base
- No
cout
in <ostream.h>
, no cin
in <istream.h>
- Second
- Namespace
std::
not supported - Illegal iterator usage
isspace
from <cctype>
is a macro
+
ABI Policy and Guidelines- The C++ Interface
- Versioning
- Goals
- History
- Prerequisites
- Configuring
- Checking Active
- Allowed Changes
- Prohibited Changes
- Implementation
- Testing
- Single ABI Testing
- Multiple ABI Testing
- Outstanding Issues
API Evolution and Deprecation History3.0
3.1
3.2
3.3
3.4
4.0
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
5
5.3
6
7
7.2
7.3
8
9
10
Backwards Compatibility- First
- No
ios_base
- No
cout
in <ostream.h>
, no cin
in <istream.h>
- Second
- Namespace
std::
not supported - Illegal iterator usage
isspace
from <cctype>
is a macro
- No
vector::at
, deque::at
, string::at
- No
std::char_traits<char>::eof
- No
string::clear
-
Removal of
ostream::form
and istream::scan
extensions
diff --git a/libstdc++-v3/doc/html/manual/api.html b/libstdc++-v3/doc/html/manual/api.html
index f9cbad526a8..bb131d3010c 100644
--- a/libstdc++-v3/doc/html/manual/api.html
+++ b/libstdc++-v3/doc/html/manual/api.html
@@ -34,7 +34,7 @@ Removal of <ext/tree>
, moved to new
anyway,
but for the optional pooling allocators the functionality is enabled by
setting GLIBCXX_FORCE_NEW
in the environment, see
- the mt allocator chapter
+ the mt allocator chapter
for details.
Error handling in iostreams cleaned up, made consistent.
@@ -391,4 +391,6 @@ now defaults to zero.
<experimental/socket>
,
and
<experimental/timer>
.
+
Deprecated features removed:
+
- Profile Mode
__gnu_cxx::array_allocator