2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2025-04-13 12:11:08 +08:00

unordered_map (unordered_map<>::_M_profile_size): Simplify, don't take a __new_size argument; adjust all callers.

2010-11-10  François Dumont  <francois.cppdevs@free.fr>

        * include/profile/unordered_map (unordered_map<>::_M_profile_size): 
        Simplify, don't take a __new_size argument; adjust all callers.

From-SVN: r166560
This commit is contained in:
François Dumont 2010-11-10 22:53:43 +01:00 committed by François Dumont
parent 5a4b6c0e97
commit 6d24de8354
2 changed files with 23 additions and 19 deletions
libstdc++-v3
ChangeLog
include/profile

@ -1,3 +1,8 @@
2010-11-10 François Dumont <francois.cppdevs@free.fr>
* include/profile/unordered_map (unordered_map<>::_M_profile_size):
Simplify, don't take a __new_size argument; adjust all callers.
2010-11-10 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/44436 (partial)
@ -1524,13 +1529,13 @@
2010-09-03 François Dumont <francois.cppdevs@free.fr>
* testsuite/lib/libstdc++.exp ([check_v3_target_debug_mode]): Fix so
that it really detects when debug mode is activated.
* testsuite/util/debug/construct_neg.h, insert_neg.h, assign_neg.h:
Remove, content moved...
* testsuite/util/debug/checks.h: ... here. Modify checks to take the
* testsuite/lib/libstdc++.exp ([check_v3_target_debug_mode]): Fix so
that it really detects when debug mode is activated.
* testsuite/util/debug/construct_neg.h, insert_neg.h, assign_neg.h:
Remove, content moved...
* testsuite/util/debug/checks.h: ... here. Modify checks to take the
type of the container to test rather than an intermediate container
type traits helper.
type traits helper.
* testsuite/23_containers/unordered_map/debug/insert1_neg.cc: Update to
use dg-require-debug-mode when necessary and use new check functions.
* testsuite/23_containers/unordered_map/debug/construct1_neg.cc:

@ -170,7 +170,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
_Base::insert(__l);
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
}
std::pair<iterator, bool>
@ -178,7 +178,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
std::pair<iterator, bool> __res = _Base::insert(__obj);
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
return __res;
}
@ -187,7 +187,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
iterator __res = _Base::insert(__iter, __v);
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
return __res;
}
@ -200,7 +200,7 @@ namespace __profile
size_type __old_size = _Base::bucket_count();
std::pair<iterator, bool> __res
= _Base::insert(std::forward<_Pair>(__obj));
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
return __res;
}
@ -212,7 +212,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
iterator __res = _Base::insert(__iter, std::forward<_Pair>(__v));
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
return __res;
}
@ -222,7 +222,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
_Base::insert(__first, __last);
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
}
void
@ -230,7 +230,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
_Base::insert(__first, __last);
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
}
// operator[]
@ -239,8 +239,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
mapped_type& __res = _M_base()[__k];
size_type __new_size = _Base::bucket_count();
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
return __res;
}
@ -249,8 +248,7 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
mapped_type& __res = _M_base()[std::move(__k)];
size_type __new_size = _Base::bucket_count();
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
return __res;
}
@ -262,13 +260,14 @@ namespace __profile
{
size_type __old_size = _Base::bucket_count();
_Base::rehash(__n);
_M_profile_resize(__old_size, _Base::bucket_count());
_M_profile_resize(__old_size);
}
private:
void
_M_profile_resize(size_type __old_size, size_type __new_size)
_M_profile_resize(size_type __old_size)
{
size_type __new_size = _Base::bucket_count();
if (__old_size != __new_size)
__profcxx_hashtable_resize(this, __old_size, __new_size);
}