re PR libstdc++/16614 (Excessive resource usage in __mt_alloc)
authorBenjamin Kosnik <bkoz@redhat.com>
Wed, 1 Sep 2004 22:17:00 +0000 (22:17 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Wed, 1 Sep 2004 22:17:00 +0000 (22:17 +0000)
commit8bfd0a46ea397185b00fe00bb40ae03c18838398
tree011bcfe52cc2afab1d0b8cb19946c66ceddd599d
parent0705d60230a25db8478d23bbd037351bf78309dc
re PR libstdc++/16614 (Excessive resource usage in __mt_alloc)

2004-09-01  Benjamin Kosnik  <bkoz@redhat.com>

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.

From-SVN: r86936
24 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/config/linker-map.gnu
libstdc++-v3/docs/html/ext/mt_allocator.html
libstdc++-v3/include/ext/mt_allocator.h
libstdc++-v3/src/Makefile.am
libstdc++-v3/src/Makefile.in
libstdc++-v3/src/allocator-inst.cc
libstdc++-v3/src/allocator.cc [deleted file]
libstdc++-v3/src/mt_allocator.cc [new file with mode: 0644]
libstdc++-v3/src/pool_allocator.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/allocators.cc [deleted file]
libstdc++-v3/testsuite/ext/debug_allocator/check_new.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/debug_allocator/instantiate.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/malloc_allocator/check_new.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/malloc_allocator/instantiate.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/mt_allocator/check_new.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/mt_allocator/instantiate.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/mt_allocator/tune-1.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/mt_allocator/tune-2.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/mt_allocator/tune-3.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/mt_allocator/tune-4.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/pool_allocator/check_new.cc [new file with mode: 0644]
libstdc++-v3/testsuite/ext/pool_allocator/instantiate.cc [new file with mode: 0644]
libstdc++-v3/testsuite/testsuite_allocator.h