This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH, C++] Move a vector out of GC space
- From: Andrew Pinski <pinskia at physics dot uc dot edu>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 29 Dec 2004 01:03:23 -0500
- Subject: [PATCH, C++] Move a vector out of GC space
I noticed that we had a vector in the C++ front-end which we knew the
life time of the vector. We also know that we cannot mark the vector
as being still in use as the structure which contains this vector
is not even marked as GC and it also only exists on the stack.
This patch moves this vector to the heap which should help compile
time but I did not measure any difference for PR 13677 (aka ir.cc).
I also just moved the definition of the vector from tree-flow.h
to tree.h so we can use it more places.
OK? Bootstrapped and tested on powerpc-darwin with no regressions.
Thanks,
Andrew Pinski
ChangeLog:
* tree-flow.h (tree_on_heap): Remove.
Remove the VEC(tree_on_heap) definition.
* tree.h (tree_on_heap): Define.
Add VEC(tree_on_heap) definition.
cp/ChangeLog:
* class.c (find_final_overrider_data): Change path to be
VEC(tree_on_heap).
(dfs_find_final_overrider_1): Change to use to
VEC(tree_on_heap) for path.
(dfs_find_final_overrider_pre): Likewise.
(dfs_find_final_overrider_post): Likewise.
(find_final_overrider): Likewise.