hashtable_policy.h (_Prime_rehash_policy:: _M_next_bkt, [...]): Use __builtin_ceil.
2007-12-24 Paolo Carlini <pcarlini@suse.de> * include/tr1_impl/hashtable_policy.h (_Prime_rehash_policy:: _M_next_bkt, _M_bkt_for_elements, _M_need_rehash): Use __builtin_ceil. * include/std/unordered_map: Do not include <cmath>; prefer <bits/stringfwd.h> to <string>. * include/std/unordered_set: Likewise. * include/tr1/unordered_map: Likewise. * include/tr1/unordered_set: Likewise. From-SVN: r131157
This commit is contained in:
parent
d0cbf089db
commit
861d6c431f
@ -1,3 +1,13 @@
|
|||||||
|
2007-12-24 Paolo Carlini <pcarlini@suse.de>
|
||||||
|
|
||||||
|
* include/tr1_impl/hashtable_policy.h (_Prime_rehash_policy::
|
||||||
|
_M_next_bkt, _M_bkt_for_elements, _M_need_rehash): Use __builtin_ceil.
|
||||||
|
* include/std/unordered_map: Do not include <cmath>; prefer
|
||||||
|
<bits/stringfwd.h> to <string>.
|
||||||
|
* include/std/unordered_set: Likewise.
|
||||||
|
* include/tr1/unordered_map: Likewise.
|
||||||
|
* include/tr1/unordered_set: Likewise.
|
||||||
|
|
||||||
2007-12-24 Paolo Carlini <pcarlini@suse.de>
|
2007-12-24 Paolo Carlini <pcarlini@suse.de>
|
||||||
|
|
||||||
* include/std/complex (complex<float>::complex(float, float)):
|
* include/std/complex (complex<float>::complex(float, float)):
|
||||||
|
@ -44,13 +44,12 @@
|
|||||||
# error C++0x header cannot be included from TR1 header
|
# error C++0x header cannot be included from TR1 header
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <cmath>
|
|
||||||
#include <string>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <algorithm> // lower_bound
|
#include <algorithm> // lower_bound
|
||||||
|
#include <type_traits>
|
||||||
#include <bits/allocator.h>
|
#include <bits/allocator.h>
|
||||||
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
||||||
#include <type_traits>
|
#include <bits/stringfwd.h>
|
||||||
#include <bits/functional_hash.h>
|
#include <bits/functional_hash.h>
|
||||||
#include <bits/hashtable.h>
|
#include <bits/hashtable.h>
|
||||||
|
|
||||||
|
@ -44,13 +44,12 @@
|
|||||||
# error C++0x header cannot be included from TR1 header
|
# error C++0x header cannot be included from TR1 header
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <cmath>
|
|
||||||
#include <string>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <algorithm> // lower_bound
|
#include <algorithm> // lower_bound
|
||||||
|
#include <type_traits>
|
||||||
#include <bits/allocator.h>
|
#include <bits/allocator.h>
|
||||||
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
||||||
#include <type_traits>
|
#include <bits/stringfwd.h>
|
||||||
#include <bits/functional_hash.h>
|
#include <bits/functional_hash.h>
|
||||||
#include <bits/hashtable.h>
|
#include <bits/hashtable.h>
|
||||||
|
|
||||||
|
@ -40,12 +40,11 @@
|
|||||||
# error TR1 header cannot be included from C++0x header
|
# error TR1 header cannot be included from C++0x header
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <cmath>
|
|
||||||
#include <string>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <algorithm> // lower_bound
|
#include <algorithm> // lower_bound
|
||||||
#include <bits/allocator.h>
|
#include <bits/allocator.h>
|
||||||
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
||||||
|
#include <bits/stringfwd.h>
|
||||||
#include <tr1/type_traits>
|
#include <tr1/type_traits>
|
||||||
#include <tr1/functional_hash.h>
|
#include <tr1/functional_hash.h>
|
||||||
#include <tr1/hashtable.h>
|
#include <tr1/hashtable.h>
|
||||||
|
@ -40,12 +40,11 @@
|
|||||||
# error TR1 header cannot be included from C++0x header
|
# error TR1 header cannot be included from C++0x header
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <cmath>
|
|
||||||
#include <string>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <algorithm> // lower_bound
|
#include <algorithm> // lower_bound
|
||||||
#include <bits/allocator.h>
|
#include <bits/allocator.h>
|
||||||
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
#include <bits/stl_function.h> // equal_to, _Identity, _Select1st
|
||||||
|
#include <bits/stringfwd.h>
|
||||||
#include <tr1/type_traits>
|
#include <tr1/type_traits>
|
||||||
#include <tr1/functional_hash.h>
|
#include <tr1/functional_hash.h>
|
||||||
#include <tr1/hashtable.h>
|
#include <tr1/hashtable.h>
|
||||||
|
@ -425,8 +425,8 @@ namespace __detail
|
|||||||
{
|
{
|
||||||
const unsigned long* __p = std::lower_bound(__prime_list, __prime_list
|
const unsigned long* __p = std::lower_bound(__prime_list, __prime_list
|
||||||
+ _S_n_primes, __n);
|
+ _S_n_primes, __n);
|
||||||
_M_next_resize = static_cast<std::size_t>(std::ceil(*__p
|
_M_next_resize =
|
||||||
* _M_max_load_factor));
|
static_cast<std::size_t>(__builtin_ceil(*__p * _M_max_load_factor));
|
||||||
return *__p;
|
return *__p;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -439,8 +439,8 @@ namespace __detail
|
|||||||
const float __min_bkts = __n / _M_max_load_factor;
|
const float __min_bkts = __n / _M_max_load_factor;
|
||||||
const unsigned long* __p = std::lower_bound(__prime_list, __prime_list
|
const unsigned long* __p = std::lower_bound(__prime_list, __prime_list
|
||||||
+ _S_n_primes, __min_bkts);
|
+ _S_n_primes, __min_bkts);
|
||||||
_M_next_resize = static_cast<std::size_t>(std::ceil(*__p
|
_M_next_resize =
|
||||||
* _M_max_load_factor));
|
static_cast<std::size_t>(__builtin_ceil(*__p * _M_max_load_factor));
|
||||||
return *__p;
|
return *__p;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -468,15 +468,14 @@ namespace __detail
|
|||||||
const unsigned long* __p =
|
const unsigned long* __p =
|
||||||
std::lower_bound(__prime_list, __prime_list + _S_n_primes,
|
std::lower_bound(__prime_list, __prime_list + _S_n_primes,
|
||||||
__min_bkts);
|
__min_bkts);
|
||||||
_M_next_resize =
|
_M_next_resize = static_cast<std::size_t>
|
||||||
static_cast<std::size_t>(std::ceil(*__p * _M_max_load_factor));
|
(__builtin_ceil(*__p * _M_max_load_factor));
|
||||||
return std::make_pair(true, *__p);
|
return std::make_pair(true, *__p);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_M_next_resize =
|
_M_next_resize = static_cast<std::size_t>
|
||||||
static_cast<std::size_t>(std::ceil(__n_bkt
|
(__builtin_ceil(__n_bkt * _M_max_load_factor));
|
||||||
* _M_max_load_factor));
|
|
||||||
return std::make_pair(false, 0);
|
return std::make_pair(false, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user