]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR pch/53880 (compile time regression when generating precompiled headers for...
authorSteven Bosscher <steven@gcc.gnu.org>
Tue, 31 Jul 2012 09:20:56 +0000 (09:20 +0000)
committerSteven Bosscher <steven@gcc.gnu.org>
Tue, 31 Jul 2012 09:20:56 +0000 (09:20 +0000)
commit3ad45f7ff3ef4e3c863ea668e8ddb13f7185c8ad
tree7b64afcca3aba595d2bf430c39ed491bbd9f189b
parent0d13c974d946713065b57fdcd46d5d5b2af3beb0
re PR pch/53880 (compile time regression when generating precompiled headers for boost)

PR pch/53880
* gengtype.c (struct walk_type_data): Add have_this_obj field.
(walk_type): For functions that take a this_obj argument and
that process fields with a GTY((length)) argument, write the
test that write_types_local_process_field will write also at the
head of the loop, effectively unswitching the loop.
(write_func_for_structure, write_local_func_for_structure): Clear
have_this_obj before calling walk_type.
(write_local_func_for_structure): Set have_this_obj before walk_type.
(write_array): Set have_this_obj for output of local pointer walking
functions but not for marker functions.
(write_types_local_process_field): Assert have_this_obj is set.

* rtl.h (simplify_using_condition): Adjust prototype using bitmap
from coretypes.h.

From-SVN: r189999
gcc/ChangeLog
gcc/gengtype.c
gcc/rtl.h