2014-02-12 Richard Biener <rguenther@suse.de>
commitec456ba80e616c1d49bd5948fe1c942cf9a132c5
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 Feb 2014 16:01:03 +0000 (12 16:01 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 12 Feb 2014 16:01:03 +0000 (12 16:01 +0000)
tree4573e5bb36217b90a92b4e79ed9e8f3631260871
parentb476835bb54880adfbd3d779beace558a55a025f
2014-02-12  Richard Biener  <rguenther@suse.de>

* vec.c (vec_prefix::calculate_allocation): Move as
inline variant to vec.h.
(vec_prefix::calculate_allocation_1): New out-of-line version.
* vec.h (vec_prefix::calculate_allocation_1): Declare.
(vec_prefix::m_has_auto_buf): Rename to ...
(vec_prefix::m_using_auto_storage): ... this.
(vec_prefix::calculate_allocation): Inline the easy cases
and dispatch to calculate_allocation_1 which doesn't need the
prefix address.
(va_heap::reserve): Use gcc_checking_assert.
(vec<T, A, vl_embed>::embedded_init): Add argument to initialize
m_using_auto_storage.
(auto_vec): Change m_vecpfx member to a vec<T, va_heap, vl_embed>
member and adjust.
(vec<T, va_heap, vl_ptr>::reserve): Remove redundant check.
(vec<T, va_heap, vl_ptr>::release): Avoid casting.
(vec<T, va_heap, vl_ptr>::using_auto_storage): Simplify.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207729 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/vec.c
gcc/vec.h