summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/ext
Commit message (Collapse)AuthorAgeFilesLines
...
* 2004-10-07 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-10-071-0/+141
| | | | | | | | | | | | | | | | | | * include/tr1: New. * include/tr1/array: New. * include/Makefile.am (tr1_headers): New. (stamp-tr1): New. (install-headers): New. (allstamped): Add stamp-tr1. * include/ext/array_allocator.h: New. * include/Makefile.am: Add. * include/Makefile.in: Regenerate. * testsuite/ext/array_allocator/1.cc: New. * testsuite/ext/array_allocator/2.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88711 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-10-05 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-10-061-79/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/17780 * include/ext/mt_allocator.h (__pool_base::_Tune): Add default options as compile-time constant enums. (__pool_base::_Tune::is_default): New. (__pool_base::_Block_address): New. (__pool_base): Rearrange data members. (__pool::_M_reserve_memory): To _M_reserve_block. (__pool::_M_reclaim_memory): To _M_reclaim_block. (__pool::_Bin_record): Add _Block_address data member. (__pool<false>): Add _M_thread_freelist_initial. (__pool::~__pool): Declare. (__common_pool_policy): Move static data member to... (__common_pool_policy::_S_get_pool): ...here, make static local. (__per_type_pool_policy): Move static data member to... (__per_type_pool_policy::_S_get_pool): ...here, make static local. (__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool. Remove static member definitions. Use define for __default_policy. * src/mt_allocator.cc: Same. * config/linker-map.gnu: Don't export _S_get_pool. Renames. * testsuite/ext/new_allocator: New. * testsuite/ext/new_allocator/instantiate.cc: New. * testsuite/ext/new_allocator/check_new.cc: New. * testsuite/ext/new_allocator/deallocate_global.cc: New. * testsuite/ext/new_allocator/deallocate_local.cc: New. * testsuite/ext/mt_allocator/instantiate.cc: Instantiate all template arguments. * testsuite/ext/mt_allocator/deallocate_global-1.cc: New. * testsuite/ext/mt_allocator/deallocate_global-2.cc: New. * testsuite/ext/mt_allocator/deallocate_global-3.cc: New. * testsuite/ext/mt_allocator/deallocate_global-4.cc: New. * testsuite/ext/mt_allocator/deallocate_local-1.cc: New. * testsuite/ext/mt_allocator/deallocate_local-2.cc: New. * testsuite/ext/mt_allocator/deallocate_local-3.cc: New. * testsuite/ext/mt_allocator/deallocate_local-4.cc: New. * testsuite/ext/mt_allocator/deallocate.cc: New. * testsuite/ext/malloc_allocator/deallocate.cc: New. * testsuite/ext/malloc_allocator/deallocate_global.cc: New. * testsuite/ext/malloc_allocator/deallocate_local.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88589 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-09-02 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-09-021-1/+1
| | | | | | | | | | | Leland Wang <llwang@infor.org> PR libstdc++/17259 * include/ext/ropeimpl.h (rope::_S_compare): Use _Rope_constants::_S_leaf. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86973 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-09-02 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-09-021-2789/+0
| | | | | | | | | | PR libstdc++/16848 * include/Makefile.am (ext_headers): Remove demangle.h. * include/Makefile.in: Regenerate. * include/ext/demangle.h: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86968 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-09-01 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-09-011-580/+543
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/16614 * include/ext/mt_allocator.h (__mt_base): Not type dependent, split into.. (__pool): New, specialize. (__common_pool): New, static bits here. (__per_type_pool): New, and here. (__mt_alloc_base): New. (__mt_alloc): Add template parameter, inherit from it. * src/allocator.cc: Split this... * src/allocator-inst.cc: And this... * src/pool_allocator.cc: ...into this. * src/mt_allocator.cc: ... and this. Add definitions for __mt_base. * src/Makefile.am (sources): Split allocator.cc to pool_allocator.cc and mt_allocator.cc. * src/Makefile.in: Regenerate. * config/linker-map.gnu: Add symbols. * docs/html/ext/mt_allocator.html: Document new design. * testsuite/ext/mt_allocator/tune-1.cc: New. * testsuite/ext/mt_allocator/tune-2.cc: New. * testsuite/ext/mt_allocator/tune-3.cc: New. * testsuite/ext/mt_allocator/tune-4.cc: New. * testsuite/testsuite_allocator.h (__gnu_test::check_new): New. * testsuite/ext/allocators.cc: Use check_new, split into... * testsuite/ext/mt_allocator/check_new.cc: this. * testsuite/ext/pool_allocator/check_new.cc: this. * testsuite/ext/malloc_allocator/check_new.cc: this. * testsuite/ext/debug_allocator/check_new.cc: this. * testsuite/ext/mt_allocator/instantiate.cc: this. * testsuite/ext/pool_allocator/instantiate.cc: this. * testsuite/ext/malloc_allocator/instantiate.cc: this. * testsuite/ext/debug_allocator/instantiate.cc: this. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86936 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-08-30 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-08-301-2/+2
| | | | | | | | | | * include/ext/pool_allocator.h: Rename __pool_base to __pool_alloc_base. * src/allocator.cc: Same. * config/linker-map.gnu: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86789 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/16844austern2004-08-021-1/+1
| | | | | | | | | | | | | | | | | | | * include/bits/stl_list.h (_M_create_node): Remove unused zero-argument version. * include/ext/slist (_M_create_node): Pass two arguments to allocator's construct() member function. * testsuite/23_containers/deque/explicit_instantiation.cc: New. * testsuite/23_containers/list/explicit_instantiation.cc: New. * testsuite/23_containers/vector/explicit_instantiation.cc: New. * testsuite/23_containers/map/explicit_instantiation.cc: New. * testsuite/23_containers/set/explicit_instantiation.cc: New. * testsuite/23_containers/multimap/explicit_instantiation.cc: New. * testsuite/23_containers/multiset/explicit_instantiation.cc: New. * testsuite/ext/hash_set_explicit_instantiation.cc: New. * testsuite/ext/slist_explicit_instantiation.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85428 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/bits/stl_construct.h (_Destroy): New three-argumentaustern2004-07-285-16/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | overload that takes an allocator argument. Another inline three-argument overload that takes std::allocator and dispatches to the two-argument version. * include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux): Change return type to void to match uninitialized_fill_n. (__uninitialized_copy_a_): New function. Like uninitialized_copy except that it takes an allocator and uses it for construct and destroy. If the allocator is std::allocator, dispatches to uninitialized_copy. (__uninitialized_fill_a): Likewise. (__uninitialized_fill_n_a): Likewise. (__uninitialized_copy_copy): Give it an allocator argument. (__uninitialized_fill_copy): Likewise. (__uninitialized_copy_fill): Likewise. * include/bits/deque.tcc: Use new forms defined in stl_construct.h and stl_uninitialized.h. Replace use of single-argument _Construct and _Destroy with use of allocator's construct and destroy methods. * include/bits/list.tcc: Likewise. * include/bits/stl_deque.h: Likewise. * include/bits/stl_list.h: Likewise. * include/bits/stl_tree.h: Likewise. * include/bits/stl_vector.h: Likewise. * include/bits/vector.tcc: Likewise. * include/ext/hashtable.h: Use rebind so that allocator_type has correct type for a container's allocator. Replace use of single-argument _Construct and _Destroy with use of allocator's construct and destroy methods. * include/ext/memory (__uninitialized_copy_n_a): New function. Like uninitialized_copy_n except that it takes an extra parameter, an allocator, and uses it for construct and destroy operations. * include/ext/rope: Use new forms defined in stl_construct.h, stl_uninitialized.h, and ext/memory. Replace use of single-argument _Construct and _Destroy with allocator construct and destroy methods. * include/ext/ropeimpl.h: Likewise. * include/ext/slist.h: Likewise. * testsuite/testsuite_allocator.h (check_construct_destroy): New. * testsuite/testsuite_allocator.cc (check_construct_destroy): New. * testsuite/23_containers/deque/check_construct_destroy.cc: New. * testsuite/23_containers/list/check_construct_destroy.cc: New. * testsuite/23_containers/set/check_construct_destroy.cc: New. * testsuite/23_containers/vector/check_construct_destroy.cc: New. * testsuite/ext/hash_check_construct_destroy.cc: New. * testsuite/ext/slist_check_construct_destroy.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85265 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-07-13 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-07-141-13/+17
| | | | | | | | | | | | | | | | * docs/html/ext/mt_allocator.html: Add docs for _Tune. * include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public. (__mt_alloc::_S_set_options): Same. Add to comments. 2004-07-13 Benjamin Kosnik <bkoz@redhat.com> * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults for linux. * configure: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84674 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-07-01 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-07-011-1/+1
| | | | | | | | | | | | | | | | | | Per Bothner <per@bothner.com > Mohan Embar <gnustuff@thisiscool.com> PR libstdc++/16248 * include/bits/concurrence.h (__glibcxx_mutex_type): New. (__glibcxx_mutex): Encapsulate mutex init function into type for threaded configurations without __GTHREAD_MUTEX_INIT. (lock::lock): Make device member a reference. (lock::~lock): Same. * include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change to mutex_type. * src/allocator.cc: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83985 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-30 Brad Spencer <spencer@infointeractive.com>bkoz2004-07-011-2/+19
| | | | | | | | | * include/ext/mt_allocator.h: Handle allocations at static initialization that happen before _S_options is (automatically) constructed; set _S_init even if _M_force_new is true. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83949 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-27 Paolo Carlini <pcarlini@suse.de>paolo2004-06-272-3384/+3955
| | | | | | | | * include/ext/rope: Trivial formatting fixes. * include/ext/ropeimpl.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83737 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-24 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-06-251-19/+7
| | | | | | | | | | | | | | | | | | | | * include/bits/concurrence.h (__gnu_cxx::lock): New. * include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove. (__pool_base::_M_get_mutex): New. * include/bits/allocator.h: Tweak. * src/allocator.cc (__pool_base::_M_get_free_list): Correct offset. * config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock. * include/bits/stl_threads.h: Remove. * include/Makefile.am: Also here. * include/Makefile.in: Regenerate. * src/locale_init.cc: Use __gnu_cxx::lock. * src/allocator.cc: Move all instantiations... * src/allocator-inst.cc: ...here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83638 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-18 Paolo Carlini <pcarlini@suse.de>paolo2004-06-181-10/+19
| | | | | | | | | | | * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align, the alignment requested. (__mt_alloc<>::_Tune::_Tune): Tweak consistently. (__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record). (__mt_alloc<>::deallocate): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83372 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-18 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-06-181-180/+42
| | | | | | | | | | | | | | * include/ext/pool_allocator.h: Qualify __throw_bad_alloc. (__pool_base): Remove unused template parameter. Add protected. Move lock data into __pool_base::_Lock. Remove static on member functions. (__pool_base::_M_get_free_list): New. (__pool_alloc): Move _S_force new here. * src/allocator.cc: Move out of line __pool_base definitions here. * config/linker-map.gnu: Export bits from __pool_base. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83355 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-16 Paolo Carlini <pcarlini@suse.de>paolo2004-06-162-31/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/ext/rope (rope(_CharT, const allocator_type&)): Fix to use _Data_allocate. * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise. (rope<>::_S_substring): Likewise. (rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise. (rope<>::c_str()): Likewise. (rope<>::replace_with_c_str()): Likewise. * include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf): Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::, not _RopeRep. (_Rope_iterator_base<>::_S_setcache): Likewise. (_Rope_iterator_base<>::_S_setcache_for_incr): Likewise. (rope<>::_S_substring): Likewise. (rope<>::_S_dump): Likewise. (rope<>::_S_fetch_ptr): Likewise. (rope<>::_S_compare): Likewise. (rope<>::replace_with_c_str()): Likewise. * testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc. * testsuite/ext/rope/2.cc: New. 2004-06-16 Paolo Carlini <pcarlini@suse.de> Matt Austern <austern@apple.com> * testsuite/ext/rope/3.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83251 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-15 Paolo Carlini <pcarlini@suse.de>paolo2004-06-152-848/+986
| | | | | | | | * include/ext/hashtable.h: Trivial formatting fixes. * include/ext/rb_tree: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83183 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-14 Paolo Carlini <pcarlini@suse.de>paolo2004-06-144-731/+1050
| | | | | | | | | | * include/ext/hash_map: Trivial formatting fixes. * include/ext/hash_set: Likewise. * include/ext/memory: Likewise. * include/ext/numeric: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83131 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-14 Paolo Carlini <pcarlini@suse.de>paolo2004-06-141-784/+951
| | | | | | | * include/ext/slist: Trivial formatting fixes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83098 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-12 Paolo Carlini <pcarlini@suse.de>paolo2004-06-124-437/+532
| | | | | | | | | | | | | | | | | | | | * include/ext/algorithm: Trivial formatting fixes. * include/ext/functional: Likewise. * include/ext/hash_fun.h: Likewise. * include/ext/iterator: Likewise. 2004-06-12 Paolo Carlini <pcarlini@suse.de> * include/bits/basic_string.tcc (find(const _CharT*, size_type, size_type)): Reimplement using std::search. * src/string-inst.cc: Instantiate std::search for char/wchar_t. 2004-06-12 Dhruv Matani <dhruvbird@gmx.net> * testsuite/performance/21_strings/string_find.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83022 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-08 Paolo Carlini <pcarlini@suse.de>paolo2004-06-081-131/+144
| | | | | | | | | | * include/ext/pool_allocator.h: Convert to a global free-list, as per the original SGI/HP design: move the implementation details to struct __pool_base, from which __pool_alloc derives. * src/allocator.cc: Instantiate __pool_base. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82794 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-29 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com>bkoz2004-05-292-3/+27
| | | | | | | | | | | | | Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/14600 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New. * include/ext/stdio_filebuf.h (stdio_filebuf::file): New. * config/io/basic_file_stdio.cc (__basic_file::file): New. * config/io/basic_file_stdio.h: Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82419 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-22 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-05-221-17/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/12854 Fixups for -Weffc++. * include/bits/basic_string.h (basic_string::operator=): Return pointer to this instead of result of assign. Although redundant, this doesn't impact resultant codegen. * include/bits/locale_facets.h (__numpunct_cache): Declare assignment opxserator and copy constructor private. (__timepunct_cache): Same. (__moneypunct_cache): Same. (collate): Use member initialization list for _M_c_locale_collate. * config/locale/gnu/messages_members.h: Same. * config/locale/gnu/time_members.h (__timepunct): Same. * src/codecvt.cc: Use member initialization list to initialize _M_c_locale_codecvt. * src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok. * config/os/gnu-linux/ctype_noninline.h: Same. * src/locale.cc (_Impl): Same. * src/locale_init.cc: Same. * src/localename.cc: Same. * include/bits/basic_ios.h (basic_ios): Complete member initialization list. * include/bits/istream.tcc (basic_istream::sentry): Same. * include/bits/ostream.tcc (basic_ostream::sentry): Same. * include/bits/fstream.tcc (basic_filebuf): Add _M_lock and _M_pback to member initialization list. * include/std/std_streambuf.h: Same. * include/std/std_sstream.h: Same, for _M_mode. * src/ios.cc (ios_base): Same. * include/ext/rope: Make derived classes match exception specifications. Add copy constructors and assignment operators. * include/debug/safe_base.h (_Safe_sequence_base): Declare copy constructor and assignment operator protected. (_Safe_iterator_base): Same. * include/debug/formatter.h (_Error_formatter): Define copy constructor and assignment operator. * include/backward/strstream: Declare assignment operator and copy constructor private. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82153 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>redi2004-05-191-3/+4
| | | | | | | * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82019 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-18 Paolo Carlini <pcarlini@suse.de>paolo2004-05-181-15/+23
| | | | | | | | | | | | | | | * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor tweaks. 2004-05-18 Dhruv Matani <dhruvbird@gmx.net> * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write allocation loop which removes blocks from the global free list from O(N) to O(1) when the required blocks are <= the number available. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81992 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-18 Jonathan Wakely <redi@gcc.gnu.org>redi2004-05-181-5/+8
| | | | | | | * include/ext/enc_filebuf.h: Move concept-check macro to class scope. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81978 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-16 Paolo Carlini <pcarlini@suse.de>paolo2004-05-161-26/+29
| | | | | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): Consistently update __bin._M_free[0]. (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use __bin._M_free[0] to simplify the while loop (i.e., the number of iterations becomes known at the outset). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81916 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-06 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-04-072-61/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixups for EDG front end. * include/ext/rope: Instead of non-existent function _Data_allocate, use allocator's allocate. Use this. (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag enumerations from _Rope_RopeRep here. * include/ext/ropeimpl.h: Same. * src/ext-inst.cc (_S_min_len): Fix up definition. * config/locale/gnu/ctype_members.cc: Qualify base class members with this. * config/locale/generic/ctype_members.cc: Same. * config/locale/gnu/messages_members.h: Same. * config/locale/generic/messages_members.h: Same. * src/ctype.cc: Same. * include/bits/codecvt.h: Same. * include/bits/boost_concept_check.h: Declare. (__error_type_must_be_an_unsigned_integer_type): Remove this. (__error_type_must_be_an_integer_type): Remove this. (__error_type_must_be_a_signed_integer_type): Remove this. * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast. * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception specification to definition. (__cxa_allocate_exception): Same. * libsupc++/eh_catch.cc (__cxa_begin_catch): Same. * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same. (__cxa_get_globals): Same. * libsupc++/del_op.cc: Add comment about freestanding. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80475 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-05 Paolo Carlini <pcarlini@suse.de>paolo2004-04-051-7/+5
| | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): The critical section is actually very small, only two assignments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80439 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-03 Paolo Carlini <pcarlini@suse.de>paolo2004-04-031-27/+11
| | | | | | | | | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out some duplicated code. (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used in the single threaded case. * testsuite/performance/20_util/allocator/list_sort_search.cc: Reorder and renumber the tests consistently with the other testfiles. * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80375 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-02 Paolo Carlini <pcarlini@suse.de>paolo2004-04-021-14/+12
| | | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): Rearrange arithmetic to avoid computing two divisions at each deallocation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80356 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-01 Paolo Carlini <pcarlini@suse.de>paolo2004-04-011-43/+31
| | | | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize): Streamline the second half, wrapping it in a single '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding conditionals inside loops. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80323 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-27 Paolo Carlini <pcarlini@suse.de>paolo2004-03-271-167/+163
| | | | | | | | | | | | | * include/ext/mt_allocator.h: Uglify consistently names of variables, members and classes; tidy. 2004-03-27 Dhruv Matani <dhruvbird@gmx.net> * include/ext/mt_allocator.h (__mt_alloc<>::deallocate): Deallocation loop rewrote. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80012 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-26 Paolo Carlini <pcarlini@suse.de>paolo2004-03-261-2/+2
| | | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::allocate, __mt_alloc<>::deallocate): Protect two instances of block->thread_id with __GTHREADS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79986 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-25 Paolo Carlini <pcarlini@suse.de>paolo2004-03-251-20/+25
| | | | | | | | | | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::tune): Add _M_min_bin, the size in bytes of the smallest bin. (__mt_alloc<>::tune()): Tweak accordingly. (__mt_alloc<>::tune(size_t, ...)): Likewise. (__mt_alloc<>::block_record): Change to a union: members next and thread_id are never used at the same time. (__mt_alloc<>::allocate): Update consistently. (__mt_alloc<>::deallocate): Likewise. (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and _S_bin_size for the configurable _M_min_size. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79962 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>bkoz2004-03-242-3/+10
| | | | | | | | | | | | * ext/malloc_allocator.h: Fixed the construct function to call global placement new instead of assignment. Added a check after the return from malloc to check whether returned pointer is NULL, and if so, throw std::bad_alloc(). * ext/debug_allocator.h: Added a check in the deallocate function to check whether the user has passed a NULL pointer or not. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79934 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>bkoz2004-03-241-102/+138
| | | | | | | | | | | | | | * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this function call __builtin_ctz instead of the while loop. (allocate) -> If condition has __builtin_expect. (deallocate) -> Ditto. Renamed a few left-over variables and typedefs according to the C++STYLE mentioned in the documentation. Protected calls to __gthread* by __gthread_active_p(), whose value is cached in the local variable __threads_active. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79924 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-24 Paolo Carlini <pcarlini@suse.de>paolo2004-03-241-47/+10
| | | | | | | | * include/ext/mt_allocator.h (__mt_alloc<>::allocate, __mt_alloc<>::deallocate): Avoid redundant conditionals. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79917 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-22 Paolo Carlini <pcarlini@suse.de>paolo2004-03-221-104/+132
| | | | | | | | | | | | | | | | | | * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator. * configure: Regenerate. * config/allocator/pool_allocator_base.h: New. * include/ext/pool_allocator.h: Convert to a standard-conforming allocator. * src/allocator.cc: Tweak instantiations. * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc. * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto. * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto. * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto. * testsuite/performance/20_util/allocator/map_thread.cc: Ditto. * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79824 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-19 Paolo Carlini <pcarlini@suse.de>paolo2004-03-191-25/+1
| | | | | | | | | | | | | Petur Runolfsson <peturr02@ru.is> PR libstdc++/12077 * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's no way to find out the conversion used by the underlying FILE*. * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New. * testsuite/27_io/objects/char/9.cc: Tweak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79695 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-19 Paolo Carlini <pcarlini@suse.de>paolo2004-03-191-3/+3
| | | | | | | | | | PR libstdc++/14648 * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix memory allocation/deallocation calls. * testsuite/ext/14648.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79687 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-03-121-163/+154
| | | | | | | | * testsuite/20_util/allocator/14176.cc: New. * include/ext/mt_allocator.h: Formatting fixes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79407 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>ljrittle2004-03-121-0/+823
| | | | | | | | | | | | | | | | | | | * docs/html/ext/ballocator_doc.txt: New file. * include/Makefile.am (ext_headers): Add ${ext_srcdir}/bitmap_allocator.h . * include/Makefile.in: Regenerate (by hand, since I didn't have automake de jure on hand). * include/ext/bitmap_allocator.h: New file. * testsuite/performance/20_util/allocator/list_sort_search.cc: New test. * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise. * testsuite/performance/20_util/allocator/producer_consumer.cc: Add test for the bitmap_allocator<>. * testsuite/performance/20_util/allocator/insert.cc: Likewise. * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise. * testsuite/performance/20_util/allocator/map_thread.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79366 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-03-071-2/+6
| | | | | | | | * include/ext/mt_allocator.h (_S_initialize): If !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79044 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-03-071-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/12658 * src/locale_init.cc (locale::locale): Lock critical regions with external mutexes. (locale::global): Same. * include/bits/concurrence.h (__glibcxx_mutex_define_initialized): Add in once bits for cases without __GTHREAD_MUTEX_INIT. (__glibcxx_mutex_lock): Same. * config/cpu/generic/atomicity.h: Remove _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h. * src/misc-inst.cc: Move all locking bits out of this file. * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK. * src/misc-inst.cc: Same. * config/cpu/hppa/atomicity.h: Same. * config/linker-map.gnu: Remove types in the signature of atomic exports, as they may vary. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@79043 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-02-26 Ian Lance Taylor <ian@wasabisystems.com>bkoz2004-02-271-0/+2789
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * testsuite/demangle/abi_examples/01.cc: Expect error -2. * testsuite/demangle/abi_examples/02.cc: Likewise. * testsuite/demangle/regression/cw-11.cc: Likewise. * testsuite/demangle/regression/cw-16.cc: Change two expected results to match libiberty demangler output. 2004-02-26 Benjamin Kosnik <bkoz@redhat.com> PR libstdc++/10246 * libsupc++/Makefile.am: Use libiberty demangler. (c_sources): Add cp-demangle.c. * libsupc++/Makefile.in: Regenerate. * src/Makefile.am (sources): Remove demangle.cc. * src/Makefile.in: Regenerate. * include/Makefile.am (bits_headers): Move demangle.h. (ext_headers): ...here. * include/Makefile.in: Regenerate. * include/bits/demangle.h: Move... * include/ext/demangle.h: ...here. * src/demangle.cc: Remove. 2004-02-26 Benjamin Kosnik <bkoz@redhat.com> * include/bits/demangle.h: Add type template parameter to all templates with just an Allocator template parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78553 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-02-20 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-02-233-601/+501
| | | | | | | | | | | | | | | | * include/ext/malloc_allocator.h: Add operators ==, !=. * include/ext/new_allocator.h: Add operators ==, !=. * include/ext/mt_allocator.h (__mt_alloc::tune): New. (__mt_alloc::_S_get_options): New. (__mt_alloc::_S_set_options): New. (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key. (__mt_alloc::_S_no_of_bins): To _S_bin_size. Move functions out of line, simplify, format. * src/allocator.cc: Simplify explicit instantiations. * include/bits/allocator.h: Tweak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78314 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-02-17 Stefan Olsson <stefan@xapa.se>bkoz2004-02-181-41/+44
| | | | | | | | | | | | | * include/ext/mt_allocator.h: Removed the last pointer. Deallocated blocks are now added to the front of freelists as proposed by Felix Yen. This gives roughly 10% performance boost and saves some memory. * docs/html/ext/mt_allocator.html: Change due to that deallocated blocks now are added to the front of freelists. The reason to this approach is also explained. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78009 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/ext/pool_allocator.h: Include c++config.h.ljrittle2004-02-101-0/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77577 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-02-09 Stefan Olsson <stefan@xapa.se>bkoz2004-02-101-0/+3
| | | | | | | | | | * include/ext/mt_allocator.h: thread_id is unused in non threaded applications and now has a ifdef to remove it completely on compilers without thread support. Include stdlib.h due to a compiler warning on getenv(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77576 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud