1 2011-04-14 Diego Novillo <dnovillo@google.com>
3 * lto-streamer-in.c (unpack_ts_base_value_fields): Handle
5 * lto-streamer-out.c (pack_ts_base_value_fields): Likewise.
7 2011-04-04 Diego Novillo <dnovillo@google.com>
9 * lto-streamer-in.c (lto_input_tree_pointers): Remove checks
10 for TS_SSA_NAME, TS_STATEMENT_LIST, TS_OMP_CLAUSE and
12 (lto_read_tree): Check for
13 streamer_hooks.register_decls_in_symtab_p before registering
14 symbols in LTO symtabs.
15 (gimple_streamer_reader_init): Move file_name_hash_table
16 initialization to lto_reader_init.
17 (lto_materialize_tree): Call streamer_hooks.alloc_tree if it exists.
18 * lto-streamer-out.c (lto_output_tree_header): Remove empty
20 (lto_output_tree_header): Assert that the tag to be written is valid.
21 Call streamer_hooks.output_tree_header if it exists.
22 * lto-streamer.c (gimple_streamer_hooks_init): Set
23 register_decls_in_symtab_p to true.
24 * lto-streamer.h (struct lto_streamer_hooks): Add field
25 register_decls_in_symtab_p.
26 (struct lto_file_decl_data): Add field sdata.
27 (struct output_block): Add field sdata.
28 (struct lto_streamer_hooks): Add fields
29 alloc_tree and output_tree_header.
30 (enum LTO_tags): Add an LTO_LAST_TAG marker, force
31 LTO_NUM_TAGS have a value bigger than MAX_TREE_CODES and
32 LAST_AND_UNUSED_GIMPLE_CODE.
33 (lto_tag_is_tree_code_p): Return true for anything less than
36 2011-03-30 Diego Novillo <dnovillo@google.com>
38 * lto-streamer-in.c (lto_input_chain): Make extern.
39 * lto-streamer-out.c (lto_output_tree_ref): Call
40 streamer_hook->indexable_with_decls_p, if it exists. If it
41 returns true, emit a reference to EXPR in the VAR_DECL index.
42 (lto_output_chain): Make extern.
43 (lto_output_tree_pointers): Move checks for invalid gimple trees ...
44 * lto-streamer.c (lto_is_streamable): ... here.
45 * lto-streamer.h (lto_streamer_hooks): Add
46 indexable_with_decls_p.
47 (lto_output_chain): Declare.
48 (lto_input_chain): Declare.
50 2011-03-25 Diego Novillo <dnovillo@google.com>
52 * lto-streamer-in.c (unpack_value_fields): Remove checks for
53 TS_SSA_NAME, TS_STATEMENT_LIST and TS_OMP_CLAUSE.
54 Call streamer_hooks.unpack_value_fields if defined.
55 * lto-streamer-out.c (pack_value_fields): Remove checks for
56 TS_SSA_NAME, TS_STATEMENT_LIST and TS_OMP_CLAUSE.
57 Call streamer_hooks.pack_value_fields if defined.
58 (lto_output_tree_header): Call streamer_hooks.is_streamable
60 * lto-streamer.c (gimple_streamer_hooks_init): Assign hooks
61 for name and is_streamable.
62 (lto_is_streamable): Move from ...
63 * lto-streamer.h: ... here.
64 (lto_streamer_hooks): Add field name, pack_value_fields,
65 unpack_value_fields and is_streamable.
66 (lto_stream_as_builtin_p):
68 2011-03-25 Diego Novillo <dnovillo@google.com>
70 * lto-streamer-in.c (lto_input_ts_decl_minimal_tree_pointers):
71 (lto_input_ts_decl_common_tree_pointers):
72 * a/gcc/lto-streamer-out.c (lto_output_tree_ref):
73 (lto_output_ts_decl_minimal_tree_pointers):
74 (lto_output_ts_decl_common_tree_pointers):
75 * a/gcc/lto-streamer.h (typedef):
78 2011-03-25 Diego Novillo <dnovillo@google.com>
80 * lto-streamer-in.c (lto_reader_init): Rename from
81 lto_init_reader. Update all users.
82 If streamer_hooks.reader_init exists, call it.
83 Move gimple-specific initialization ...
84 (gimple_streamer_init_reader): ... to this new function.
85 (lto_input_ts_decl_common_tree_pointers): Document unhandled fields.
86 Do not handle DECL_INITIAL.
87 (lto_input_ts_decl_non_common_tree_pointers): Document
89 Do not handle DECL_SAVED_TREE.
90 (lto_read_tree): If streamer_hooks.read_tree is defined, call
92 (gimple_streamer_read_tree): New. Handle DECL_INITIAL.
93 (gimple_streamer_reader_init): Rename from
94 gimple_streamer_init_reader. Update all users.
95 * lto-streamer-out.c (lto_writer_init): Make extern.
96 (lto_output): Call gimple_streamer_hooks_init.
97 (lto_output_ts_decl_common_tree_pointers): Document unhandled fields.
98 Do not handle DECL_INITIAL.
99 (lto_output_ts_decl_non_common_tree_pointers): Document
101 Do not handle DECL_SAVED_TREE.
102 (lto_write_tree): If streamer_hooks.write_tree is defined,
104 (gimple_streamer_write_tree): New. Handle DECL_INITIAL and
106 * lto-streamer.c (gimple_streamer_hooks_init): New.
107 (streamer_hooks): New.
108 (streamer_hooks_init): New.
109 * lto-streamer.h (lto_streamer_hooks): Declare.
110 (streamer_hooks): Declare
111 (streamer_hooks_init): Declare
112 (gimple_streamer_hooks_init): Declare.
113 (gimple_streamer_init_reader): Declare.
114 (lto_writer_init): Declare.
115 (struct output_block): Forward declare.
116 (struct lto_input_block): Likewise.
117 (struct data_in): Likewise.
119 2011-03-24 Diego Novillo <dnovillo@google.com>
121 Merge from trunk rev 171388.
123 2011-03-23 Diego Novillo <dnovillo@google.com>
125 * lto-streamer-in.c (input_string_internal): Add clarifying
127 * lto-streamer-out.c (lto_output_string_with_length): Rename from
128 output_string_with_length.
129 Output 0 to indicate a non-NULL string. Update all callers to
131 (lto_output_string): Rename from output_string. Make extern.
134 2011-03-23 Diego Novillo <dnovillo@google.com>
136 * lto-streamer-in.c (lto_input_ts_decl_non_common_tree_pointers):
137 Always read DECL_SAVED_TREE.
138 * lto-streamer-out.c (lto_output_ts_decl_common_tree_pointers):
139 Igonore varpool nodes.
140 (lto_output_ts_decl_non_common_tree_pointers): Output NULL
143 2011-03-17 Diego Novillo <dnovillo@google.com>
145 Merge from trunk rev 171104.
147 2011-03-15 Diego Novillo <dnovillo@google.com>
149 Merge from google/integration rev 170999 (4.6 branch
150 point at rev 170934).
152 2011-03-09 Diego Novillo <dnovillo@google.com>
154 * lto-opts.c (input_data_block): Rename and move ...
155 * lto-streamer-in.c (lto_input_data_block): ... here.
156 * lto-streamer-in.c (lto_input_string): Rename from
157 input_string. Make extern. Update all users.
158 * lto-streamer-out.c (lto_output_string_with_length): Rename
159 from output_string_with_length. Make extern. Update all
161 (lto_output_string): Rename from output_string. Make extern.
163 (lto_output_decl_state_streams): Make extern.
164 (lto_output_decl_state_refs): Make extern.
165 * lto-streamer.c (lto_get_common_nodes): #if0 assertions not
166 valid inside the front end.
167 * lto-streamer.h (lto_input_string): Declare.
168 (lto_input_data_block): Declare.
169 (lto_output_string): Declare.
170 (lto_output_string_with_length): Declare.
171 (lto_output_decl_state_streams): Declare.
172 (lto_output_decl_state_refs): Declare.
174 2011-03-04 Lawrence Crowl <crowl@google.com>
177 Add TDF_VISDEF to flags for pretty printing "visible definitions".
178 This enables more C-like output.
180 * tree-pretty-print.c (dump_generic_node):
181 Turn off visible definitions for bases of arrays and pointers.
182 Print struct definitions under visible definitions.
184 * (print_declaration):
185 Filter artificial nodes under visible definitions.
186 Make "static" mean what the language means, not the linker.
187 Create a separate case for typedefs distinct from variables.
188 Move printing of "typedef" to that case.
190 * (print_struct_decl):
191 Change field print algorithm.
192 Filter out struct tags that are artificial, i.e. start with ".".
194 2011-02-15 Lawrence Crowl <crowl@google.com>
199 Add rule for strstrmap.o.
200 Add strstrmap.o to OBJS-common.
201 Add dependence of c-family/c-opts.o on strstrmap.h.
203 2011-02-07 Diego Novillo <dnovillo@google.com>
205 Merge from google/integration.
207 2011-01-24 Lawrence Crowl <crowl@google.com>
211 * timevar.h (timevar_cond_start): Remove unused POP_TIMEVAR_AND_RETURN.
212 * (timevar_cond_start): New for starting a timer only when it is not
214 * (timevar_cond_stop): New for stopping a timer when it was not already
217 * timevar.c (timevar_stop): Enable start/stop timers to start again.
218 * (timevar_cond_start): New as above.
219 * (timevar_cond_stop): New as above.
220 * (timevar_print): Reduce time output to fit in an 80-column window.
221 Factor out units to column headings.
222 Conditionally compile column headings as well as column data.
224 * timevar.def: Add start/stop timers for compiler phases,
225 TV_PHASE_SETUP, TV_PHASE_PARSING, TV_PHASE_C_WRAPUP_CHECK,
226 TV_PHASE_CP_DEFERRED, TV_PHASE_CGRAPH, TV_PHASE_DBGINFO
227 (C), TV_PHASE_CHECK_DBGINFO (C++), TV_PHASE_GENERATE, and
229 Change push/pop timer TV_PARSE to TV_PARSE_GLOBAL.
230 Add push/pop timers TV_PARSE_STRUCT, TV_PARSE_ENUM, TV_PARSE_FUNC,
231 TV_PARSE_INMETH, TV_INSTANTIATE_TEMPLATE.
232 Change push/pop timers TV_GC and TV_NAME_LOOKUP into start/stop timers.
233 Add start/stop timer TV_RESOLVE_OVERLOAD.
234 Remove unused timers TV_OVERLOAD, TV_TEMPLATE_INSTANTIATION.
235 Mark the strings for TV_GC, TV_NAME_LOOKUP, and
236 TV_RESOLVE_OVERLOAD with a "|" to indicate that they are
239 * toplev.c (compile_file): Change TV_PARSE to TV_PARSE_GLOBAL.
240 Start/stop timers TV_PHASE_PARSING and TV_PHASE_GENERATE.
241 * (do_compile): Start/stop timers TV_PHASE_SETUP and TV_PHASE_FINALIZE.
243 * c-decl.c (c_write_global_declarations): Add start/stop of
244 TV_PHASE_C_WRAPUP_CHECK, TV_PHASE_CGRAPH, TV_PHASE_DBGINFO.
246 * ggc-zone.c (ggc_collect): Change TV_GC to start/stop.
247 * ggc-page.c (ggc_collect): Change TV_GC to start/stop.
249 * c-parser.c (c_parser_declaration_or_fndef): Push/pop TV_PARSE_FUNC.
250 * (c_parser_enum_specifier): Push/pop TV_PARSE_ENUM.
251 * (c_parser_struct_or_union_specifier): Push/pop TV_PARSE_STRUCT.
253 2011-01-21 Diego Novillo <dnovillo@google.com>
255 Mainline merge r169107.
257 * DATESTAMP: Update merge revision.
259 2011-01-05 Diego Novillo <dnovillo@google.com>
261 Mainline merge r168483.
263 * DATESTAMP: Update merge revision.
265 2010-12-17 Diego Novillo <dnovillo@google.com>
267 Fix broken bootstrap.
269 * BASE-VER: Move trunk revision suffix...
270 * DATESTAMP: ... here.
272 2010-12-17 Diego Novillo <dnovillo@google.com>
274 Mainline merge r167963.
276 * BASE-VER: Update revision stamp.
278 2010-11-02 Lawrence Crowl <crowl@google.com>
279 Diego Novillo <dnovillo@google.com>
281 * tree-pretty-print.c (dump_generic_node): Protect
282 against NULL TREE_TYPE.
283 * tree.c (make_node_stat): Call
284 lang_hooks.pph_catch_tree, if defined.
285 * input.h (LOCATION_COLUMN): Define.
286 * timevar.def (TV_PTH_DEPENDENCY): Define.
287 (TV_PTH_MANAGE): Define.
288 (TV_PTH_MD5): Define.
289 (TV_PTH_LOAD): Define.
290 (TV_PTH_SAVE): Define.
291 (TV_PTH_SKIP_TOKENS): Define.
292 (TV_PTH_INIT): Define.
293 (TV_PPH_CACHE_IN): Define.
294 (TV_PPH_CACHE_OUT): Define.
295 (TV_PPH_MANAGE): Define.
296 * langhooks.h: Add fields pph_catch_tree and pph_uncatch_tree.
297 * tree-inline.c (copy_tree_r): Tolerate STATEMENT_LISTs
298 when DATA is not NULL.
299 * langhooks-def.h (LANG_HOOKS_PPH_UNCATCH_TREE): Define.
300 (LANG_HOOKS_PPH_CATCH_TREE): Define.
301 (LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_PPH_UNCATCH_TREE
302 and LANG_HOOKS_PPH_CATCH_TREE.