r180072 - in /branches/pph/gcc: cp/ChangeLog.pp...
crowl@gcc.gnu.org
crowl@gcc.gnu.org
Mon Oct 17 02:22:00 GMT 2011
Author: crowl
Date: Mon Oct 17 02:22:09 2011
New Revision: 180072
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=180072
Log:
Factor the vector and chain output routines to remove boolean control
parameters. The functions pph_out_tree_vec_1 and pph_out_chain_1 split
their conditional parts of their implementation into their use cases,
calling each other as needed.
pph_out_tree_vec - nothing special
pph_out_tree_vec_unchain - unchaining
pph_out_mergeable_tree_vec - merging, unchaining, reversing
pph_out_tree_vec_filtered - filtering
pph_out_chain - nothing special
pph_out_chain_filtered - filtering
pph_out_mergeable_chain_filtered - merging, unchaining, reversing, filtering
This change fixes an ordering bug, but now causes an ICE to surface,
which will be addressed later.
Tested on x64.
Index: gcc/testsuite/ChangeLog.pph
2011-10-16 Lawrence Crowl <crowl@google.com>
* g++.dg/pph/x4tmplfuncinln.cc: Change failure to ICE.
* g++.dg/pph/x4tmplfuncninl.cc: Likewise.
* g++.dg/pph/z4tmplfuncinln.cc: Likewise.
* g++.dg/pph/z4tmplfuncninl.cc: Likewise.
Index: gcc/cp/ChangeLog.pph
2011-10-16 Lawrence Crowl <crowl@google.com>
* pph-streamer.h (pph_dump_chain): New.
* pph-streamer.c (pph_trace_tree): Filter expressions from trace.
Print tree code.
* pph.c (pph_dump_tree_name): Add print newline.
(pph_dump_namespace): Remove print space.
(pph_dump_binding): Factor out dumping a chain.
(pph_dump_chain): New.
* pph-streamer-in.c (pph_in_mergeable_binding_level): Use
pph_dump_chain.
(pph_read_file_1): Change location of namespace dump.
* pph-streamer-out.c (pph_tree_matches): Remove redundant test.
(pph_out_tree_vec_1): Removed.
(pph_out_tree_vec): Takes core implementation from pph_out_tree_vec_1.
(pph_out_tree_vec_unchain): New. Takes core implementation from
pph_out_tree_vec_1.
(pph_out_mergeable_tree_vec): Likewise.
(pph_out_tree_vec_filtered): Likewise.
(chain2vec_filter): Prevent null filter.
(chain2vec): New. Handles case above.
(pph_out_chain_1): Removed.
(pph_out_chain): Takes core implementation from pph_out_chain_1.
(pph_out_chain_filtered): New. Takes core implementation from
pph_out_chain_1.
(pph_out_mergeable_chain_filtered): Likewise.
Modified:
branches/pph/gcc/cp/ChangeLog.pph
branches/pph/gcc/cp/pph-streamer-in.c
branches/pph/gcc/cp/pph-streamer-out.c
branches/pph/gcc/cp/pph-streamer.c
branches/pph/gcc/cp/pph-streamer.h
branches/pph/gcc/cp/pph.c
branches/pph/gcc/cp/pt.c
branches/pph/gcc/testsuite/ChangeLog.pph
branches/pph/gcc/testsuite/g++.dg/pph/x4tmplfuncinln.cc
branches/pph/gcc/testsuite/g++.dg/pph/x4tmplfuncninl.cc
branches/pph/gcc/testsuite/g++.dg/pph/z4tmplfuncinln.cc
branches/pph/gcc/testsuite/g++.dg/pph/z4tmplfuncninl.cc
More information about the Gcc-cvs
mailing list