[NDS32] Fix wrong data flow when building nds32 target with --enable-checking=yes.
[gcc.git] / gcc / ChangeLog
1 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
2
3 * config/nds32/constants.md (UNSPEC_VOLATILE_POP25_RETURN): New.
4 * config/nds32/nds32.md (pop25return): New.
5 * config/nds32/nds32.c (nds32_expand_epilogue_v3pop): Emit
6 pop25return pattern.
7
8 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
9
10 * doc/invoke.texi (NDS32 Options): Remove -mforce-fp-as-gp,
11 -mforbid-fp-as-gp, and -mex9 options.
12
13 2015-01-16 Chung-Ju Wu <jasonwucj@gmail.com>
14
15 * doc/invoke.texi (NDS32 Options): Add -mcmodel= option and
16 remove -mgp-direct option.
17
18 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
19
20 * doc/invoke.texi (--param early-inlining-insns): Update default value.
21 * params.def (PARAM_EARLY_INLINING_INSNS): Set to 14.
22
23 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
24
25 * ipa-inline.c (inline_small_functions): Work around hints
26 cache issue.
27
28 2015-01-15 Sandra Loosemore <sandra@codesourcery.com>
29
30 PR target/59710
31 * doc/invoke.texi (Option Summary): Document new Nios II
32 -mgpopt= syntax.
33 (Nios II Options): Likewise.
34 * config/nios2/nios2.opt: Add -mgpopt= option support.
35 Modify existing -mgpopt and -mno-gpopt options to be aliases.
36 * config/nios2/nios2-opts.h (enum nios2_gpopt_type): New.
37 * config/nios2/nios2.c (nios2_option_override): Adjust
38 -mgpopt defaulting.
39 (nios2_in_small_data_p): Return true for explicit small data
40 sections even with -G0.
41 (nios2_symbol_ref_in_small_data_p): Adjust to handle new -mgpopt=
42 option choices.
43
44 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
45
46 PR ipa/64612
47 * ipa-inline-transform.c (can_remove_node_now_p): Fix handling
48 of comdat locals.
49 (inline_call): Fix removal of aliases.
50
51 2015-01-15 Jakub Jelinek <jakub@redhat.com>
52
53 * flag-types.h (enum sanitize_code): Add SANITIZE_VPTR,
54 include SANITIZE_VPTR in SANITIZE_UNDEFINED.
55 * opts.c (common_handle_option): Add -fsanitize=vptr.
56 * sanitizer.def (BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS,
57 BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS_ABORT): New.
58 * ubsan.h (enum ubsan_null_ckind): Add UBSAN_DOWNCAST_POINTER,
59 UBSAN_DOWNCAST_REFERENCE, UBSAN_UPCAST and UBSAN_CAST_TO_VBASE.
60 (ubsan_expand_vptr_ifn): New prototype.
61 * internal-fn.c (expand_ANNOTATE, expand_GOMP_SIMD_LANE,
62 expand_GOMP_SIMD_VF, expand_GOMP_SIMD_LAST_LANE, expand_UBSAN_NULL,
63 expand_UBSAN_BOUNDS, expand_UBSAN_OBJECT_SIZE, expand_ASAN_CHECK,
64 expand_LOOP_VECTORIZED): Make argument nameless, remove
65 ATTRIBUTE_UNUSED.
66 (expand_UBSAN_VPTR): New function.
67 * internal-fn.def (UBSAN_NULL, ASAN_CHECK): Use R instead of W
68 in fn spec.
69 (UBSAN_VPTR): New internal function.
70 * sanopt.c (tree_map_traits): Renamed to ...
71 (sanopt_tree_map_traits): ... this.
72 (sanopt_tree_triplet, sanopt_tree_triplet_map_traits): New classes.
73 (sanopt_ctx): Adjust asan_check_map type for tree_map_traits
74 to sanopt_tree_map_traits renaming. Add vptr_check_map field.
75 (maybe_optimize_ubsan_vptr_ifn): New function.
76 (sanopt_optimize_walker): Handle IFN_UBSAN_VPTR.
77 (pass_sanopt::execute): Likewise. Call sanopt_optimize even for
78 -fsanitize=vptr.
79 * tree-ssa-alias.c (call_may_clobber_ref_p_1): Handle certain
80 internal calls like pure functions for aliasing, even when they
81 have other side-effects that prevent making them ECF_PURE.
82 * ubsan.c (ubsan_vptr_type_cache_decl): New variable.
83 (ubsan_expand_vptr_ifn): New function.
84
85 2015-01-15 Vladimir Makarov <vmakarov@redhat.com>
86
87 PR rtl-optimization/64110
88 * stmt.c (parse_output_constraint): Process '^' and '$'.
89 (parse_input_constraint): Ditto.
90 * lra-constraints.c (process_alt_operands): Process the new
91 constraints.
92 * ira-costs.c (record_reg_classes): Process the new constraint
93 '^'.
94 * genoutput.c (indep_constraints): Add '^' and '$'.
95 * config/i386/sse.md (*vec_dup<mode>): Use '$' instead of '!'.
96 * doc/md.texi: Add description of the new constraints.
97
98 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
99 Bernd Schmidt <bernds@codesourcery.com>
100 Cesar Philippidis <cesar@codesourcery.com>
101 James Norris <jnorris@codesourcery.com>
102 Tom de Vries <tom@codesourcery.com>
103 Ilmir Usmanov <i.usmanov@samsung.com>
104 Dmitry Bocharnikov <dmitry.b@samsung.com>
105 Evgeny Gavrin <e.gavrin@samsung.com>
106 Jakub Jelinek <jakub@redhat.com>
107
108 * builtin-types.def (BT_FN_VOID_INT_INT_VAR)
109 (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR_INT_INT_VAR)
110 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR_INT_INT_INT_INT_INT_VAR):
111 New function types.
112 * builtins.c: Include "gomp-constants.h".
113 (expand_builtin_acc_on_device): New function.
114 (expand_builtin, is_inexpensive_builtin): Handle
115 BUILT_IN_ACC_ON_DEVICE.
116 * builtins.def (DEF_GOACC_BUILTIN, DEF_GOACC_BUILTIN_COMPILER):
117 New macros.
118 * cgraph.c (cgraph_node::create): Consider flag_openacc next to
119 flag_openmp.
120 * config.gcc <nvptx-*> (tm_file): Add nvptx/offload.h.
121 <*-intelmic-* | *-intelmicemul-*> (tm_file): Add
122 i386/intelmic-offload.h.
123 * gcc.c (LINK_COMMAND_SPEC, GOMP_SELF_SPECS): For -fopenacc, link
124 to libgomp and its dependencies.
125 * config/arc/arc.h (LINK_COMMAND_SPEC): Likewise.
126 * config/darwin.h (LINK_COMMAND_SPEC_A): Likewise.
127 * config/i386/mingw32.h (GOMP_SELF_SPECS): Likewise.
128 * config/ia64/hpux.h (LIB_SPEC): Likewise.
129 * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
130 * config/pa/pa64-hpux.h (LIB_SPEC): Likewise.
131 * doc/generic.texi: Update for OpenACC changes.
132 * doc/gimple.texi: Likewise.
133 * doc/invoke.texi: Likewise.
134 * doc/sourcebuild.texi: Likewise.
135 * gimple-pretty-print.c (dump_gimple_omp_for): Handle
136 GF_OMP_FOR_KIND_OACC_LOOP.
137 (dump_gimple_omp_target): Handle GF_OMP_TARGET_KIND_OACC_KERNELS,
138 GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_DATA,
139 GF_OMP_TARGET_KIND_OACC_UPDATE,
140 GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA.
141 Dump more data.
142 * gimple.c: Update comments for OpenACC changes.
143 * gimple.def: Likewise.
144 * gimple.h: Likewise.
145 (enum gf_mask): Add GF_OMP_FOR_KIND_OACC_LOOP,
146 GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS,
147 GF_OMP_TARGET_KIND_OACC_DATA, GF_OMP_TARGET_KIND_OACC_UPDATE,
148 GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA.
149 (gimple_omp_for_cond, gimple_omp_for_set_cond): Sort in the
150 appropriate place.
151 (is_gimple_omp_oacc, is_gimple_omp_offloaded): New functions.
152 * gimplify.c: Include "gomp-constants.h".
153 Update comments for OpenACC changes.
154 (is_gimple_stmt): Handle OACC_PARALLEL, OACC_KERNELS, OACC_DATA,
155 OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE, OACC_ENTER_DATA,
156 OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP.
157 (gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses): Handle
158 OMP_CLAUSE__CACHE_, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
159 OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
160 OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_GANG, OMP_CLAUSE_WORKER,
161 OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT,
162 OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE_INDEPENDENT, OMP_CLAUSE_AUTO,
163 OMP_CLAUSE_SEQ.
164 (gimplify_adjust_omp_clauses_1, gimplify_adjust_omp_clauses): Use
165 GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
166 OMP_CLAUSE_SET_MAP_KIND.
167 (gimplify_oacc_cache): New function.
168 (gimplify_omp_for): Handle OACC_LOOP.
169 (gimplify_omp_workshare): Handle OACC_KERNELS, OACC_PARALLEL,
170 OACC_DATA.
171 (gimplify_omp_target_update): Handle OACC_ENTER_DATA,
172 OACC_EXIT_DATA, OACC_UPDATE.
173 (gimplify_expr): Handle OACC_LOOP, OACC_CACHE, OACC_HOST_DATA,
174 OACC_DECLARE, OACC_KERNELS, OACC_PARALLEL, OACC_DATA,
175 OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE.
176 (gimplify_body): Consider flag_openacc next to flag_openmp.
177 * lto-streamer-out.c: Include "gomp-constants.h".
178 * omp-builtins.def (BUILT_IN_ACC_GET_DEVICE_TYPE)
179 (BUILT_IN_GOACC_DATA_START, BUILT_IN_GOACC_DATA_END)
180 (BUILT_IN_GOACC_ENTER_EXIT_DATA, BUILT_IN_GOACC_PARALLEL)
181 (BUILT_IN_GOACC_UPDATE, BUILT_IN_GOACC_WAIT)
182 (BUILT_IN_GOACC_GET_THREAD_NUM, BUILT_IN_GOACC_GET_NUM_THREADS)
183 (BUILT_IN_ACC_ON_DEVICE): New builtins.
184 * omp-low.c: Include "gomp-constants.h".
185 Update comments for OpenACC changes.
186 (struct omp_context): Add reduction_map, gwv_below, gwv_this
187 members.
188 (extract_omp_for_data, use_pointer_for_field, install_var_field)
189 (new_omp_context, delete_omp_context, scan_sharing_clauses)
190 (create_omp_child_function, scan_omp_for, scan_omp_target)
191 (check_omp_nesting_restrictions, lower_reduction_clauses)
192 (build_omp_regions_1, diagnose_sb_0, make_gimple_omp_edges):
193 Update for OpenACC changes.
194 (scan_sharing_clauses): Handle OMP_CLAUSE_NUM_GANGS:
195 OMP_CLAUSE_NUM_WORKERS: OMP_CLAUSE_VECTOR_LENGTH,
196 OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT, OMP_CLAUSE_GANG,
197 OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_DEVICE_RESIDENT,
198 OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_INDEPENDENT,
199 OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ. Use GOMP_MAP_* instead of
200 OMP_CLAUSE_MAP_*.
201 (expand_omp_for_static_nochunk, expand_omp_for_static_chunk):
202 Handle GF_OMP_FOR_KIND_OACC_LOOP.
203 (expand_omp_target, lower_omp_target): Handle
204 GF_OMP_TARGET_KIND_OACC_PARALLEL, GF_OMP_TARGET_KIND_OACC_KERNELS,
205 GF_OMP_TARGET_KIND_OACC_UPDATE,
206 GF_OMP_TARGET_KIND_OACC_ENTER_EXIT_DATA,
207 GF_OMP_TARGET_KIND_OACC_DATA.
208 (pass_expand_omp::execute, execute_lower_omp)
209 (pass_diagnose_omp_blocks::gate): Consider flag_openacc next to
210 flag_openmp.
211 (offload_symbol_decl): New variable.
212 (oacc_get_reduction_array_id, oacc_max_threads)
213 (get_offload_symbol_decl, get_base_type, lookup_oacc_reduction)
214 (maybe_lookup_oacc_reduction, enclosing_target_ctx)
215 (oacc_loop_or_target_p, oacc_lower_reduction_var_helper)
216 (oacc_gimple_assign, oacc_initialize_reduction_data)
217 (oacc_finalize_reduction_data, oacc_process_reduction_data): New
218 functions.
219 (is_targetreg_ctx): Remove function.
220 * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE__CACHE_,
221 OMP_CLAUSE_DEVICE_RESIDENT, OMP_CLAUSE_USE_DEVICE,
222 OMP_CLAUSE_GANG, OMP_CLAUSE_ASYNC, OMP_CLAUSE_WAIT,
223 OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ, OMP_CLAUSE_INDEPENDENT,
224 OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR, OMP_CLAUSE_NUM_GANGS,
225 OMP_CLAUSE_NUM_WORKERS, OMP_CLAUSE_VECTOR_LENGTH.
226 * tree.c (omp_clause_code_name, walk_tree_1): Update accordingly.
227 * tree.h (OMP_CLAUSE_GANG_EXPR, OMP_CLAUSE_GANG_STATIC_EXPR)
228 (OMP_CLAUSE_ASYNC_EXPR, OMP_CLAUSE_WAIT_EXPR)
229 (OMP_CLAUSE_VECTOR_EXPR, OMP_CLAUSE_WORKER_EXPR)
230 (OMP_CLAUSE_NUM_GANGS_EXPR, OMP_CLAUSE_NUM_WORKERS_EXPR)
231 (OMP_CLAUSE_VECTOR_LENGTH_EXPR): New macros.
232 * tree-core.h: Update comments for OpenACC changes.
233 (enum omp_clause_map_kind): Remove.
234 (struct tree_omp_clause): Change type of map_kind member from enum
235 omp_clause_map_kind to unsigned char.
236 * tree-inline.c: Update comments for OpenACC changes.
237 * tree-nested.c: Likewise. Include "gomp-constants.h".
238 (convert_nonlocal_reference_stmt, convert_local_reference_stmt)
239 (convert_tramp_reference_stmt, convert_gimple_call): Update for
240 OpenACC changes. Use GOMP_MAP_* instead of OMP_CLAUSE_MAP_*. Use
241 OMP_CLAUSE_SET_MAP_KIND.
242 * tree-pretty-print.c: Include "gomp-constants.h".
243 (dump_omp_clause): Handle OMP_CLAUSE_DEVICE_RESIDENT,
244 OMP_CLAUSE_USE_DEVICE, OMP_CLAUSE__CACHE_, OMP_CLAUSE_GANG,
245 OMP_CLAUSE_ASYNC, OMP_CLAUSE_AUTO, OMP_CLAUSE_SEQ,
246 OMP_CLAUSE_WAIT, OMP_CLAUSE_WORKER, OMP_CLAUSE_VECTOR,
247 OMP_CLAUSE_NUM_GANGS, OMP_CLAUSE_NUM_WORKERS,
248 OMP_CLAUSE_VECTOR_LENGTH, OMP_CLAUSE_INDEPENDENT. Use GOMP_MAP_*
249 instead of OMP_CLAUSE_MAP_*.
250 (dump_generic_node): Handle OACC_PARALLEL, OACC_KERNELS,
251 OACC_DATA, OACC_HOST_DATA, OACC_DECLARE, OACC_UPDATE,
252 OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_CACHE, OACC_LOOP.
253 * tree-streamer-in.c: Include "gomp-constants.h".
254 (unpack_ts_omp_clause_value_fields) Use GOMP_MAP_* instead of
255 OMP_CLAUSE_MAP_*. Use OMP_CLAUSE_SET_MAP_KIND.
256 * tree-streamer-out.c: Include "gomp-constants.h".
257 (pack_ts_omp_clause_value_fields): Use GOMP_MAP_* instead of
258 OMP_CLAUSE_MAP_*.
259 * tree.def (OACC_PARALLEL, OACC_KERNELS, OACC_DATA)
260 (OACC_HOST_DATA, OACC_LOOP, OACC_CACHE, OACC_DECLARE)
261 (OACC_ENTER_DATA, OACC_EXIT_DATA, OACC_UPDATE): New tree codes.
262 * tree.c (omp_clause_num_ops): Update accordingly.
263 * tree.h (OMP_BODY, OMP_CLAUSES, OMP_LOOP_CHECK, OMP_CLAUSE_SIZE):
264 Likewise.
265 (OACC_PARALLEL_BODY, OACC_PARALLEL_CLAUSES, OACC_KERNELS_BODY)
266 (OACC_KERNELS_CLAUSES, OACC_DATA_BODY, OACC_DATA_CLAUSES)
267 (OACC_HOST_DATA_BODY, OACC_HOST_DATA_CLAUSES, OACC_CACHE_CLAUSES)
268 (OACC_DECLARE_CLAUSES, OACC_ENTER_DATA_CLAUSES)
269 (OACC_EXIT_DATA_CLAUSES, OACC_UPDATE_CLAUSES)
270 (OACC_KERNELS_COMBINED, OACC_PARALLEL_COMBINED): New macros.
271 * tree.h (OMP_CLAUSE_MAP_KIND): Cast it to enum gomp_map_kind.
272 (OMP_CLAUSE_SET_MAP_KIND): New macro.
273 * varpool.c (varpool_node::get_create): Consider flag_openacc next
274 to flag_openmp.
275 * config/i386/intelmic-offload.h: New file.
276 * config/nvptx/offload.h: Likewise.
277
278 2015-01-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
279
280 * explow.h: Remove duplicate contents.
281 * dojump.h: Likewise.
282
283 2015-01-15 Richard Earnshaw <rearnsha@arm.com>
284
285 * arm.c (arm_xgene_tune): Add default initializer for instruction
286 fusion.
287
288 2015-01-15 Jan Hubicka <hubicka@ucw.cz>
289
290 PR ipa/64068
291 PR ipa/64559
292 * ipa.c (symbol_table::remove_unreachable_nodes):
293 Do not put abstract origins into boundary.
294
295 2015-01-15 Evgeny Stupachenko <evstupac@gmail.com>
296
297 * config/i386/gnu-user.h (CRT_GET_RFIB_DATA): Remove EBX register usage.
298 * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Ditto.
299
300 2015-01-15 Steve Ellcey <sellcey@mips.com>
301
302 * Makefile.in (PLUGIN_HEADERS): Add dominance.h, cfg.h, cfgrtl.h,
303 cfganal.h, cfgbuild.h, cfgcleanup.h, lcm.h, cfgloopmanip.h,
304 builtins.def, and chkp-builtins.def.
305
306 2015-01-15 David Edelsohn <dje.gcc@gmail.com>
307
308 * config/rs6000/default64.h (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use
309 ISA 2.7 (POWER8).
310
311 2015-01-15 Richard Biener <rguenther@suse.de>
312
313 PR tree-optimization/61743
314 * tree-ssa-pre.c (insert_into_preds_of_block): Preserve range
315 information on PHIs for some simple cases.
316
317 2015-01-15 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
318
319 * config/arm/arm.md (generic_sched): Specify xgene1 in 'no' list.
320 Include xgene1.md.
321 * config/arm/arm.c (arm_issue_rate): Specify 4 for xgene1.
322 * config/arm/arm-cores.def (xgene1): New entry.
323 * config/arm/arm-tables.opt: Regenerate.
324 * config/arm/arm-tune.md: Regenerate.
325 * config/arm/bpabi.h (BE8_LINK_SPEC): Specify mcpu=xgene1.
326
327 2015-01-15 Yuri Rumyantsev <ysrumyan@gmail.com>
328
329 * tree-if-conv.c: Include hash-map.h.
330 (aggressive_if_conv): New variable.
331 (fold_build_cond_expr): Add simplification of non-zero condition.
332 (add_to_dst_predicate_list): Invoke add_to_predicate_list if edge
333 destination block is not always executed.
334 (if_convertible_phi_p): Fix commentary, allow phi nodes have more
335 than two predecessors if AGGRESSIVE_IF_CONV is true.
336 (if_convertible_stmt_p): Fix commentary.
337 (all_preds_critical_p): New function.
338 (has_pred_critical_p): New function.
339 (if_convertible_bb_p): Fix commentary, if AGGRESSIVE_IF_CONV is true
340 BB can have more than two predecessors and all incoming edges can be
341 critical.
342 (predicate_bbs): Skip predication for loop exit block, use build2_loc
343 to compute predicate for true edge.
344 (find_phi_replacement_condition): Delete this function.
345 (is_cond_scalar_reduction): Add arguments ARG_0, ARG_1 and EXTENDED.
346 Allow interchange PHI arguments if EXTENDED is false.
347 Change check that block containing reduction statement candidate
348 is predecessor of phi-block since phi may have more than two arguments.
349 (phi_args_hash_traits): New helper structure.
350 (struct phi_args_hash_traits): New type.
351 (phi_args_hash_traits::hash): New function.
352 (phi_args_hash_traits::equal_keys): New function.
353 (gen_phi_arg_condition): New function.
354 (predicate_scalar_phi): Add handling of phi nodes with more than two
355 arguments, delete COND and TRUE_BB arguments, insert body of
356 find_phi_replacement_condition to predicate ordinary phi nodes.
357 (predicate_all_scalar_phis): Skip blocks with the only predecessor,
358 delete call of find_phi_replacement_condition and invoke
359 predicate_scalar_phi with two arguments.
360 (insert_gimplified_predicates): Add assert that non-predicated block
361 don't have statements to insert.
362 (ifcvt_split_critical_edges): New function.
363 (ifcvt_split_def_stmt): Likewise.
364 (ifcvt_walk_pattern_tree): Likewise.
365 (stmt_is_root_of_bool_pattern): Likewise.
366 (ifcvt_repair_bool_pattern): Likewise.
367 (ifcvt_local_dce): Likewise.
368 (tree_if_conversion): Add initialization of AGGRESSIVE_IF_CONV which
369 is copy of inner or outer loop force_vectorize field, invoke
370 ifcvt_split_critical_edges, ifcvt_local_dce and
371 ifcvt_repair_bool_pattern for aggressive if-conversion.
372
373 2015-01-15 Philipp Tomsich <ptomsich@theobroma-systems.com>
374
375 * config/aarch64/aarch64.md: Include xgene1.md.
376 * config/aarch64/xgene1.md: New file.
377
378 2015-01-15 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
379
380 * config/aarch64/aarch64-cores.def (xgene1): Update/add the
381 xgene1 (APM XGene-1) core definition.
382 * gcc/config/aarch64/aarch64.c: Add cost tables for APM XGene-1
383 * config/arm/aarch-cost-tables.h: Add cost tables for APM XGene-1
384 * doc/invoke.texi: Document -mcpu=xgene1.
385
386 2015-10-15 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
387
388 * dojump.h: New header file.
389 * explow.h: Likewise.
390 * expr.h: Remove includes.
391 Move expmed.c prototypes to expmed.h.
392 Move dojump.c prototypes to dojump.h.
393 Move alias.c prototypes to alias.h.
394 Move explow.c prototypes to explow.h.
395 Move calls.c prototypes to calls.h.
396 Move emit-rtl.c prototypes to emit-rtl.h.
397 Move varasm.c prototypes to varasm.h.
398 Move stmt.c prototypes to stmt.h.
399 (saved_pending_stack_adjust): Move to dojump.h.
400 (adjust_address): Move to explow.h.
401 (adjust_address_nv): Move to emit-rtl.h.
402 (adjust_bitfield_address): Likewise.
403 (adjust_bitfield_address_size): Likewise.
404 (adjust_bitfield_address_nv): Likewise.
405 (adjust_automodify_address_nv): Likewise.
406 * explow.c (expr_size): Move to expr.c.
407 (int_expr_size): Likewise.
408 (tree_expr_size): Likewise.
409 Include calls.h dojump.h emit-rtl.h explow.h expmed.h
410 fixed-value.h hashtab.h statistics.h stmt.h varasm.h.
411 * genemit.c (main): Generate includes statistics.h, real.h, fixed-value.h,
412 insn-config.h, expmed.h, dojump.h, explow.h, emit-rtl.h, stmt.h.
413 * genopinit.c (main): Generate includes hashtab.h, hard-reg-set.h, function.h,
414 statistics.h, real.h, fixed-value.h, expmed.h, dojump.h, explow.h, emit-rtl.h,
415 stmt.h.
416 * genoutput.c (main): Generate includes hashtab.h, statistics.h, real.h,
417 fixed-value.h, expmed.h, dojump.h, explow.h, emit-rtl.h, stmt.h.
418 * genemit.c (open_base_files): Generate includes flags.h, statistics.h, real.h,
419 fixed-value.h, tree.h, expmed.h, dojump.h, explow.h, calls.h, emit-rtl.h, varasm.h,
420 stmt.h.
421 * config/tilepro/gen-mul-tables.cc: Generate includes hashtab.h, hash-set.h, vec.h,
422 machmode.h, tm.h, hard-reg-set.h, input.h, function.h, rtl.h, flags.h, statistics.h,
423 double-int.h, real.h, fixed-value.h, alias.h, wide-int.h, inchash.h, tree.h,
424 insn-config.h, expmed.h, dojump.h, explow.h, calls.h, emit-rtl.h, varasm.h, stmt.h.
425 * config/tilegx/mul-tables.c: Include alias.h calls.h dojump.h
426 double-int.h emit-rtl.h explow.h expmed.h fixed-value.h flags.h
427 function.h hard-reg-set.h hash-set.h hashtab.h inchash.h input.h
428 insn-config.h machmode.h real.h rtl.h statistics.h stmt.h symtab.h
429 tm.h tree.h varasm.h vec.h wide-int.h.
430 * rtlhooks.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
431 explow.h expmed.h fixed-value.h flags.h function.h hard-reg-set.h
432 hash-set.h hashtab.h inchash.h input.h insn-config.h machmode.h
433 real.h statistics.h stmt.h tree.h varasm.h vec.h wide-int.h.
434 * cfgloopanal.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
435 explow.h expmed.h fixed-value.h flags.h inchash.h insn-config.h
436 real.h statistics.h stmt.h tree.h varasm.h wide-int.h.
437 * loop-iv.c: Likewise.
438 * lra-assigns.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
439 explow.h expmed.h fixed-value.h flags.h inchash.h real.h
440 statistics.h stmt.h tree.h varasm.h wide-int.h.
441 * lra-constraints.c: Likewise.
442 * lra-eliminations.c: Likewise.
443 * lra-lives.c: Likewise.
444 * lra-remat.c: Likewise.
445 * bt-load.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
446 explow.h expmed.h fixed-value.h inchash.h insn-config.h real.h
447 statistics.h stmt.h tree.h varasm.h wide-int.h.
448 * hw-doloop.c: Likewise.
449 * ira-color.c: Likewise.
450 * ira-emit.c: Likewise.
451 * loop-doloop.c: Likewise.
452 * loop-invariant.c: Likewise.
453 * reload.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
454 explow.h expmed.h fixed-value.h inchash.h real.h rtl.h
455 statistics.h stmt.h tree.h varasm.h wide-int.h.
456 * caller-save.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
457 explow.h expmed.h fixed-value.h inchash.h real.h statistics.h
458 stmt.h tree.h varasm.h wide-int.h.
459 * combine-stack-adj.c: Likewise.
460 * cse.c: Likewise.
461 * ddg.c: Likewise.
462 * ifcvt.c: Likewise.
463 * ira-costs.c: Likewise.
464 * jump.c: Likewise.
465 * lra-coalesce.c: Likewise.
466 * lra-spills.c: Likewise.
467 * profile.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
468 explow.h expmed.h fixed-value.h insn-config.h real.h statistics.h
469 stmt.h varasm.h wide-int.h.
470 * lra.c: Include alias.h calls.h dojump.h double-int.h emit-rtl.h
471 explow.h expmed.h fixed-value.h real.h statistics.h stmt.h
472 varasm.h.
473 * config/sh/sh_treg_combine.cc: Include alias.h calls.h dojump.h
474 double-int.h explow.h expmed.h fixed-value.h flags.h real.h
475 statistics.h stmt.h varasm.h wide-int.h.
476 * reorg.c: Include alias.h calls.h dojump.h double-int.h explow.h
477 expmed.h fixed-value.h inchash.h real.h statistics.h stmt.h tree.h
478 varasm.h wide-int.h.
479 * reload1.c: Include alias.h calls.h dojump.h double-int.h explow.h
480 expmed.h fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
481 * config/tilegx/tilegx.c: Include alias.h dojump.h double-int.h
482 emit-rtl.h explow.h expmed.h fixed-value.h flags.h real.h
483 statistics.h stmt.h.
484 * config/tilepro/tilepro.c: Likewise.
485 * config/mmix/mmix.c: Include alias.h dojump.h double-int.h emit-rtl.h
486 explow.h expmed.h fixed-value.h real.h statistics.h stmt.h.
487 * config/pdp11/pdp11.c: Likewise.
488 * config/xtensa/xtensa.c: Likewise.
489 * config/lm32/lm32.c: Include alias.h dojump.h double-int.h emit-rtl.h
490 explow.h expmed.h fixed-value.h real.h statistics.h stmt.h
491 varasm.h.
492 * tree-chkp.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
493 fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
494 insn-config.h real.h rtl.h statistics.h stmt.h tm.h.
495 * cilk-common.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
496 fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
497 insn-config.h real.h rtl.h statistics.h stmt.h tm.h varasm.h.
498 * rtl-chkp.c: Likewise.
499 * tree-chkp-opt.c: Likewise.
500 * config/arm/arm-builtins.c: Include calls.h dojump.h emit-rtl.h explow.h
501 expmed.h fixed-value.h flags.h function.h hard-reg-set.h hashtab.h
502 insn-config.h real.h statistics.h stmt.h varasm.h.
503 * ipa-icf.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
504 fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h
505 statistics.h stmt.h.
506 * tree-vect-data-refs.c: Likewise.
507 * graphite-sese-to-poly.c: Include calls.h dojump.h emit-rtl.h explow.h
508 expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
509 rtl.h statistics.h stmt.h varasm.h.
510 * internal-fn.c: Likewise.
511 * ipa-icf-gimple.c: Likewise.
512 * lto-section-out.c: Likewise.
513 * tree-data-ref.c: Likewise.
514 * tree-nested.c: Likewise.
515 * tree-outof-ssa.c: Likewise.
516 * tree-predcom.c: Likewise.
517 * tree-pretty-print.c: Likewise.
518 * tree-scalar-evolution.c: Likewise.
519 * tree-ssa-strlen.c: Likewise.
520 * tree-vect-loop.c: Likewise.
521 * tree-vect-patterns.c: Likewise.
522 * tree-vect-slp.c: Likewise.
523 * tree-vect-stmts.c: Likewise.
524 * tsan.c: Likewise.
525 * targhooks.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
526 fixed-value.h flags.h hashtab.h insn-config.h real.h statistics.h
527 stmt.h.
528 * config/sh/sh-mem.cc: Include calls.h dojump.h emit-rtl.h explow.h
529 expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
530 statistics.h stmt.h varasm.h.
531 * loop-unroll.c: Likewise.
532 * ubsan.c: Likewise.
533 * tree-ssa-loop-prefetch.c: Include calls.h dojump.h emit-rtl.h explow.h
534 expmed.h fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h
535 stmt.h varasm.h.
536 * dse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
537 fixed-value.h function.h hashtab.h statistics.h stmt.h varasm.h.
538 * tree-switch-conversion.c: Include calls.h dojump.h emit-rtl.h explow.h
539 expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h
540 statistics.h stmt.h.
541 * generic-match-head.c: Include calls.h dojump.h emit-rtl.h explow.h
542 expmed.h fixed-value.h hashtab.h insn-config.h real.h rtl.h
543 statistics.h stmt.h varasm.h.
544 * gimple-match-head.c: Likewise.
545 * lto-cgraph.c: Likewise.
546 * lto-section-in.c: Likewise.
547 * lto-streamer-in.c: Likewise.
548 * lto-streamer-out.c: Likewise.
549 * tree-affine.c: Likewise.
550 * tree-cfg.c: Likewise.
551 * tree-cfgcleanup.c: Likewise.
552 * tree-if-conv.c: Likewise.
553 * tree-into-ssa.c: Likewise.
554 * tree-ssa-alias.c: Likewise.
555 * tree-ssa-copyrename.c: Likewise.
556 * tree-ssa-dse.c: Likewise.
557 * tree-ssa-forwprop.c: Likewise.
558 * tree-ssa-live.c: Likewise.
559 * tree-ssa-math-opts.c: Likewise.
560 * tree-ssa-pre.c: Likewise.
561 * tree-ssa-sccvn.c: Likewise.
562 * tree-tailcall.c: Likewise.
563 * tree-vect-generic.c: Likewise.
564 * tree-sra.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
565 fixed-value.h hashtab.h insn-config.h real.h rtl.h stmt.h varasm.h.
566 * stor-layout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
567 fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h.
568 * varasm.c: Likewise.
569 * coverage.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
570 fixed-value.h hashtab.h insn-config.h real.h statistics.h stmt.h
571 varasm.h.
572 * init-regs.c: Likewise.
573 * ira.c: Likewise.
574 * omp-low.c: Likewise.
575 * stack-ptr-mod.c: Likewise.
576 * tree-ssa-reassoc.c: Likewise.
577 * tree-complex.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
578 fixed-value.h hashtab.h insn-config.h rtl.h statistics.h stmt.h
579 varasm.h.
580 * dwarf2cfi.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
581 fixed-value.h hashtab.h insn-config.h statistics.h stmt.h varasm.h.
582 * shrink-wrap.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
583 fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h.
584 * recog.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
585 fixed-value.h hashtab.h real.h rtl.h statistics.h stmt.h varasm.h.
586 * tree-ssa-phiopt.c: Likewise.
587 * config/darwin.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
588 fixed-value.h hashtab.h real.h statistics.h stmt.h.
589 * config/fr30/fr30.c: Likewise.
590 * config/frv/frv.c: Likewise.
591 * expr.c: Likewise.
592 * final.c: Likewise.
593 * optabs.c: Likewise.
594 * passes.c: Likewise.
595 * simplify-rtx.c: Likewise.
596 * stmt.c: Likewise.
597 * toplev.c: Likewise.
598 * var-tracking.c: Likewise.
599 * gcse.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
600 fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
601 * lower-subreg.c: Likewise.
602 * postreload-gcse.c: Likewise.
603 * ree.c: Likewise.
604 * reginfo.c: Likewise.
605 * store-motion.c: Likewise.
606 * combine.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
607 fixed-value.h hashtab.h real.h stmt.h varasm.h.
608 * emit-rtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
609 fixed-value.h hashtab.h statistics.h stmt.h.
610 * dojump.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
611 fixed-value.h hashtab.h statistics.h stmt.h varasm.h.
612 * except.c: Likewise.
613 * explow.c: Likewise.
614 * tree-dfa.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
615 fixed-value.h insn-config.h real.h rtl.h statistics.h stmt.h
616 varasm.h.
617 * gimple-fold.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
618 fixed-value.h insn-config.h real.h rtl.h statistics.h varasm.h.
619 * tree-ssa-structalias.c: Likewise.
620 * cfgexpand.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
621 fixed-value.h insn-config.h real.h statistics.h.
622 * calls.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
623 fixed-value.h insn-config.h real.h statistics.h stmt.h.
624 * bb-reorder.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
625 fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h.
626 * cfgbuild.c: Likewise.
627 * function.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
628 fixed-value.h real.h rtl.h statistics.h stmt.h.
629 * cfgrtl.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
630 fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
631 * dbxout.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
632 fixed-value.h real.h statistics.h stmt.h.
633 * auto-inc-dec.c: Include calls.h dojump.h emit-rtl.h explow.h expmed.h
634 fixed-value.h real.h statistics.h stmt.h varasm.h.
635 * cprop.c: Likewise.
636 * modulo-sched.c: Likewise.
637 * postreload.c: Likewise.
638 * ccmp.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h
639 flags.h function.h hard-reg-set.h hashtab.h insn-config.h real.h
640 statistics.h stmt.h varasm.h.
641 * gimple-ssa-strength-reduction.c: Include calls.h dojump.h emit-rtl.h
642 explow.h fixed-value.h flags.h hashtab.h insn-config.h real.h
643 rtl.h statistics.h stmt.h varasm.h.
644 * tree-ssa-loop-ivopts.c: Include calls.h dojump.h emit-rtl.h explow.h
645 fixed-value.h flags.h hashtab.h real.h rtl.h statistics.h stmt.h
646 varasm.h.
647 * expmed.c: Include calls.h dojump.h emit-rtl.h explow.h fixed-value.h
648 function.h hard-reg-set.h hashtab.h real.h statistics.h stmt.h
649 varasm.h.
650 * target-globals.c: Include calls.h dojump.h emit-rtl.h explow.h
651 fixed-value.h function.h hashtab.h real.h statistics.h stmt.h
652 varasm.h.
653 * tree-ssa-address.c: Include calls.h dojump.h emit-rtl.h explow.h
654 fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
655 * cfgcleanup.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
656 function.h real.h statistics.h stmt.h varasm.h.
657 * alias.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
658 insn-config.h real.h statistics.h stmt.h.
659 * dwarf2out.c: Include calls.h dojump.h explow.h expmed.h fixed-value.h
660 statistics.h stmt.h.
661 * config/nvptx/nvptx.c: Include dojump.h emit-rtl.h explow.h expmed.h
662 fixed-value.h flags.h hard-reg-set.h insn-config.h real.h
663 statistics.h stmt.h varasm.h.
664 * gimplify.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
665 flags.h hashtab.h insn-config.h real.h rtl.h statistics.h.
666 * asan.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
667 flags.h hashtab.h insn-config.h real.h rtl.h statistics.h stmt.h.
668 * ipa-devirt.c: Include dojump.h emit-rtl.h explow.h expmed.h
669 fixed-value.h flags.h hashtab.h insn-config.h real.h rtl.h
670 statistics.h stmt.h varasm.h.
671 * ipa-polymorphic-call.c: Likewise.
672 * config/aarch64/aarch64.c: Include dojump.h emit-rtl.h explow.h expmed.h
673 fixed-value.h flags.h hashtab.h insn-config.h real.h statistics.h
674 stmt.h.
675 * config/c6x/c6x.c: Likewise.
676 * config/aarch64/aarch64-builtins.c: Include dojump.h emit-rtl.h explow.h
677 expmed.h fixed-value.h flags.h hashtab.h insn-config.h real.h
678 statistics.h stmt.h varasm.h.
679 * ipa-prop.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
680 hashtab.h insn-config.h real.h rtl.h statistics.h stmt.h varasm.h.
681 * ipa-split.c: Likewise.
682 * tree-eh.c: Likewise.
683 * tree-ssa-dce.c: Likewise.
684 * tree-ssa-loop-niter.c: Likewise.
685 * tree-vrp.c: Likewise.
686 * config/nds32/nds32-cost.c: Include dojump.h emit-rtl.h explow.h
687 expmed.h fixed-value.h hashtab.h insn-config.h real.h statistics.h
688 stmt.h.
689 * config/nds32/nds32-fp-as-gp.c: Likewise.
690 * config/nds32/nds32-intrinsic.c: Likewise.
691 * config/nds32/nds32-isr.c: Likewise.
692 * config/nds32/nds32-md-auxiliary.c: Likewise.
693 * config/nds32/nds32-memory-manipulation.c: Likewise.
694 * config/nds32/nds32-pipelines-auxiliary.c: Likewise.
695 * config/nds32/nds32-predicates.c: Likewise.
696 * config/nds32/nds32.c: Likewise.
697 * config/cris/cris.c: Include dojump.h emit-rtl.h explow.h expmed.h
698 fixed-value.h hashtab.h real.h statistics.h.
699 * config/alpha/alpha.c: Include dojump.h emit-rtl.h explow.h expmed.h
700 fixed-value.h hashtab.h real.h statistics.h stmt.h.
701 * config/arm/arm.c: Likewise.
702 * config/avr/avr.c: Likewise.
703 * config/bfin/bfin.c: Likewise.
704 * config/h8300/h8300.c: Likewise.
705 * config/i386/i386.c: Likewise.
706 * config/ia64/ia64.c: Likewise.
707 * config/iq2000/iq2000.c: Likewise.
708 * config/m32c/m32c.c: Likewise.
709 * config/m32r/m32r.c: Likewise.
710 * config/m68k/m68k.c: Likewise.
711 * config/mcore/mcore.c: Likewise.
712 * config/mep/mep.c: Likewise.
713 * config/mips/mips.c: Likewise.
714 * config/mn10300/mn10300.c: Likewise.
715 * config/moxie/moxie.c: Likewise.
716 * config/pa/pa.c: Likewise.
717 * config/rl78/rl78.c: Likewise.
718 * config/rx/rx.c: Likewise.
719 * config/s390/s390.c: Likewise.
720 * config/sh/sh.c: Likewise.
721 * config/sparc/sparc.c: Likewise.
722 * config/spu/spu.c: Likewise.
723 * config/stormy16/stormy16.c: Likewise.
724 * config/v850/v850.c: Likewise.
725 * config/vax/vax.c: Likewise.
726 * config/cr16/cr16.c: Include dojump.h emit-rtl.h explow.h expmed.h
727 fixed-value.h hashtab.h real.h statistics.h stmt.h varasm.h.
728 * config/msp430/msp430.c: Likewise.
729 * predict.c: Likewise.
730 * value-prof.c: Likewise.
731 * config/epiphany/epiphany.c: Include dojump.h emit-rtl.h explow.h
732 expmed.h fixed-value.h hashtab.h statistics.h stmt.h.
733 * config/microblaze/microblaze.c: Likewise.
734 * config/nios2/nios2.c: Likewise.
735 * config/rs6000/rs6000.c: Likewise.
736 * tree.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
737 insn-config.h real.h rtl.h statistics.h stmt.h.
738 * cgraph.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
739 insn-config.h real.h statistics.h stmt.h.
740 * fold-const.c: Include dojump.h emit-rtl.h explow.h expmed.h
741 fixed-value.h insn-config.h real.h statistics.h stmt.h varasm.h.
742 * tree-inline.c: Include dojump.h emit-rtl.h explow.h expmed.h
743 fixed-value.h real.h rtl.h statistics.h stmt.h varasm.h.
744 * builtins.c: Include dojump.h emit-rtl.h explow.h expmed.h fixed-value.h
745 real.h statistics.h stmt.h.
746 * config/arc/arc.c: Include dojump.h emit-rtl.h explow.h expmed.h
747 fixed-value.h statistics.h stmt.h.
748 * config/visium/visium.c: Include dojump.h emit-rtl.h explow.h expmed.h
749 stmt.h.
750
751 2015-01-15 Jakub Jelinek <jakub@redhat.com>
752
753 * gengtype.c (create_user_defined_type): Workaround
754 -Wmaybe-uninitialized false positives.
755 * cse.c (fold_rtx): Likewise.
756 * loop-invariant.c (gain_for_invariant): Likewise.
757
758 2015-01-15 Eric Botcazou <ebotcazou@adacore.com>
759
760 * expr.c (expand_expr_real_1) <normal_inner_ref>: Use the expression to
761 set the memory attributes in all cases but clear MEM_EXPR if need be.
762
763 2015-01-15 Yuri Rumyantsev <ysrumyan@gmail.com>
764
765 PR tree-optimization/64434
766 * cfgexpand.c (reorder_operands): New function.
767 (expand_gimple_basic_block): Insert call of reorder_operands if
768 optimized is true.
769
770 2015-01-15 Matthew Fortune <matthew.fortune@imgtec.com>
771
772 * config/mips/micromips.md (*swp): Remove explicit parallel.
773 (jraddiusp, *movep<MOVEP1:mode><MOVEP2:mode>): Likewise.
774 * config/mips/mips-dsp.md (add<DSPV:mode>3): Likewise.
775 (mips_add<DSP:dspfmt1>_s_<DSP:dspfmt2>, sub<DSPV:mode>3): Likewise.
776 (mips_sub<DSP:dspfmt1>_s_<DSP:dspfmt2>, mips_addsc): Likewise.
777 (mips_addwc, mips_absq_s_<DSPQ:dspfmt2>): Likewise.
778 (mips_precrq_rs_ph_w, mips_precrqu_s_qb_ph): Likewise.
779 (mips_shll_<DSPV:dspfmt2>, mips_shll_s_<DSPQ:dspfmt2>): Likewise.
780 (mips_muleu_s_ph_qbl, mips_muleu_s_ph_qbr): Likewise.
781 (mips_mulq_rs_ph, mips_muleq_s_w_phl, mips_muleq_s_w_phr): Likewise.
782 (mips_dpaq_s_w_ph, mips_dpsq_s_w_ph, mips_mulsaq_s_w_ph): Likewise.
783 (mips_dpaq_sa_l_w, mips_dpsq_sa_l_w, mips_maq_s_w_phl): Likewise.
784 (mips_maq_s_w_phr, mips_maq_sa_w_phl, mips_maq_sa_w_phr): Likewise.
785 (mips_extr_w, mips_extr_r_w, mips_extr_rs_w): Likewise.
786 (mips_extr_s_h, mips_extp, mips_extpdp, mips_mthlip): Likewise.
787 (mips_wrdsp): Likewise.
788 * config/mips/mips-dspr2.md (mips_absq_s_qb): Remove explicit
789 parallel.
790 (mips_addu_ph, mips_addu_s_ph, mips_cmpgdu_eq_qb): Likewise.
791 (mips_cmpgdu_lt_qb, mips_cmpgdu_le_qb, mulv2hi3): Likewise.
792 (mips_mul_s_ph, mips_mulq_rs_w, mips_mulq_s_ph): Likewise.
793 (mips_mulq_s_w, mips_subu_ph, mips_subu_s_ph): Likewise.
794 (mips_dpaqx_s_w_ph, mips_dpaqx_sa_w_ph): Likewise.
795 (mips_dpsqx_s_w_ph, mips_dpsqx_sa_w_ph): Likewise.
796 * config/mips/mips-fixed.md (usadd<mode>3): Remove explicit parallel.
797 (ssadd<mode>3, ussub<mode>3, sssub<mode>3, ssmul<mode>3): Likewise.
798 (ssmaddsqdq4, ssmsubsqdq4): Likewise.
799
800 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com>
801
802 * config/mips/mips.c (mips_rtx_costs): Set costs for LSA/DLSA.
803 (mips_print_operand): Support 'y' to print exact log2 in decimal
804 of a const_int.
805 * config/mips/mips.h (ISA_HAS_LSA): New define.
806 (ISA_HAS_DLSA): Likewise.
807 * config/mips/mips.md (<GPR:d>lsa): New define_insn.
808 * config/mips/predicates.md (const_immlsa_operand): New predicate.
809
810 2015-01-15 Martin Liska <mliska@suse.cz>
811
812 PR target/64377
813 * optc-save-gen.awk: Add support for array types.
814
815 2015-01-15 Richard Biener <rguenther@suse.de>
816
817 PR middle-end/64365
818 * tree-data-ref.c (dr_analyze_indices): Make sure that accesses
819 for MEM_REF access functions with the same base can never partially
820 overlap.
821
822 2015-01-14 Marcos Diaz <marcos.diaz@tallertechnologies.com>
823
824 * common.opt: New option -fstack-protector-explicit.
825 * cfgexpand.c (SPCT_FLAG_EXPLICIT): New enum.
826 (stack_protect_decl_phase): Handle stack_protect attribute for
827 explicit stack protection requests.
828 (expand_used_vars): Similarly.
829 * doc/cpp.texi (__SSP_EXPLICIT__): Document predefined macro.
830 * doc/extend.texi: Add documentation for "stack_protect" attribute.
831 * doc/invoke.texi: Add documentation for -fstack-protector-explicit.
832
833 2015-01-14 Oleg Endo <olegendo@gcc.gnu.org>
834
835 PR target/53988
836 * config/sh/sh-protos.h (sh_find_set_of_reg): Add option to ignore
837 reg-reg copies.
838 (sh_extending_set_of_reg): New struct.
839 (sh_find_extending_set_of_reg, sh_split_tst_subregs,
840 sh_remove_reg_dead_or_unused_notes): New Declarations.
841 * config/sh/sh.c (sh_remove_reg_dead_or_unused_notes,
842 sh_find_extending_set_of_reg, sh_split_tst_subregs,
843 sh_extending_set_of_reg::use_as_extended_reg): New functions.
844 * config/sh/sh.md (*tst<mode>_t_zero): Rename to *tst<mode>_t_subregs,
845 convert to insn_and_split and use new function sh_split_tst_subregs.
846
847 2015-01-14 Sandra Loosemore <sandra@codesourcery.com>
848
849 * doc/invoke.texi (Option Summary): Reclassify -fuse-ld as a linker
850 option.
851 (Optimization Options): Move -fuse-ld documentation to...
852 (Link Options): ...here.
853
854 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com>
855
856 * config/mips/constraints.md (ZC): Add support for R6 LL/SC
857 offsets.
858 (ZD): Update to use ISA_HAS_9BIT_DISPLACEMENT.
859 * config/mips/mips.h (ISA_HAS_PREFETCH_9BIT): Rename to...
860 (ISA_HAS_9BIT_DISPLACEMENT): ... this. New macro.
861 * config/mips/sync.md (sync_compare_and_swap<mode>): Use ZC
862 instead of ZR for the memory operand of LL/SC.
863 (compare_and_swap_12, sync_add<mode>): Likewise.
864 (sync_<optab>_12, sync_old_<optab>_12): Likewise.
865 (sync_new_<optab>_12, sync_nand_12): Likewise.
866 (sync_old_nand_12, sync_new_nand_12): Likewise.
867 (sync_sub<mode>, sync_old_add<mode>): Likewise.
868 (sync_old_sub<mode>, sync_new_add<mode>): Likewise.
869 (sync_new_sub<mode>, sync_<optab><mode>): Likewise.
870 (sync_old_<optab><mode>, sync_new_<optab><mode>"): Likewise.
871 (sync_nand<mode>, sync_old_nand<mode>): Likewise.
872 (sync_new_nand<mode>, sync_lock_test_and_set<mode>): Likewise.
873 (test_and_set_12, atomic_compare_and_swap<mode>): Likewise.
874 (atomic_exchange<mode>_llsc, atomic_fetch_add<mode>_llsc): Likewise.
875 * doc/md.texi (ZC): Update description.
876
877 2015-01-14 Andrew MacLeod <amacleod@redhat.com>
878
879 * builtins.c (expand_builtin_atomic_exchange): Remove error when
880 memory model is CONSUME.
881 (expand_builtin_atomic_compare_exchange, expand_builtin_atomic_load,
882 expand_builtin_atomic_store): Change invalid memory model errors to
883 warnings.
884 (expand_builtin_atomic_clear): Change invalid model errors to warnings
885 and issue warning for CONSUME.
886
887 2015-01-14 Aldy Hernandez <aldyh@redhat.com>
888
889 * lto-cgraph: Update function comments for
890 lto_symtab_encoder_encode_*.
891
892 2015-01-14 Ilya Verbin <ilya.verbin@intel.com>
893
894 * Makefile.in (site.exp): Do not set ENABLE_LTO.
895
896 2015-01-14 Ilya Verbin <ilya.verbin@intel.com>
897
898 * cgraphunit.c (ipa_passes): Remove argument from ipa_write_summaries.
899 * lto-cgraph.c (select_what_to_stream): Remove argument, use
900 lto_stream_offload_p instead.
901 * lto-streamer.h (select_what_to_stream): Remove argument.
902 * passes.c (ipa_write_summaries): Likewise.
903 * tree-pass.h (ipa_write_summaries): Likewise.
904
905 2015-01-14 Richard Biener <rguenther@suse.de>
906
907 PR tree-optimization/59354
908 * tree-vect-slp.c (vect_build_slp_tree_1): Treat loads from
909 groups larger than the slp group size as having gaps.
910
911 2015-01-14 Andrew MacLeod <amacleod@redhat.com>
912
913 PR middle-end/59448
914 * builtins.c (get_memmodel): Promote consume to acquire always.
915
916 2015-01-14 Ilya Tocar <ilya.tocar@intel.com>
917
918 PR target/64386
919 * config/i386/i386.c (ix86_expand_sse_cmp): Handle V64QImode,
920 V32HImode.
921
922 2015-01-14 Ilya Tocar <ilya.tocar@intel.com>
923
924 PR target/64393
925 * common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX512VBMI_SET):
926 Enable AVX512BW.
927 (OPTION_MASK_ISA_AVX512BW_UNSET): Disable AVX512VBMI.
928 * config/i386/i386.c (ix86_hard_regno_mode_ok): Don't check
929 AVX512VBMI, as it implies AVX512BW.
930
931 2015-01-14 Ilya Tocar <ilya.tocar@intel.com>
932
933 PR target/64387
934 * config/i386/sse.md (vec_unpacks_hi_v8sf): Fix predicate.
935 (vec_unpacks_hi_v16sf): Ditto.
936
937 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
938
939 * config/aarch64/arm_neon.h: Error out if AdvancedSIMD
940 is not available.
941
942 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
943
944 * doc/invoke.texi (mapcs): Mention deprecation.
945 (mapcs-frame): Likewise.
946
947 2015-01-14 Thomas Preud'homme <thomas.preudhomme@arm.com>
948
949 PR target/64453
950 * config/arm/arm.c (callee_saved_reg_p): Define.
951 (arm_compute_save_reg0_reg12_mask): Use callee_saved_reg_p to check if
952 register is callee saved instead of !call_used_regs[reg].
953 (thumb1_compute_save_reg_mask): Likewise.
954
955 2015-01-14 Hale Wang <hale.wang@arm.com>
956
957 * config/arm/arm.c: Tune the max_cond_insns/branch_cost for
958 Cortex-M7.
959
960 2015-01-14 Richard Biener <rguenther@suse.de>
961
962 PR lto/64415
963 * tree-inline.c (insert_debug_decl_map): Check destination
964 function MAY_HAVE_DEBUG_STMTS.
965 (insert_init_debug_bind): Likewise.
966 (insert_init_stmt): Remove redundant check.
967 (remap_gimple_stmt): Drop debug stmts if the destination
968 function has var-tracking assignments disabled.
969
970 2015-01-14 Martin Liska <mliska@suse.cz>
971
972 * ipa-icf-gimple.c (func_checker::compare_operand): Add support for
973 IMAGPART_EXPR and REALPART_EXPR and fix BIT_FIELD_REF comparison.
974
975 2015-01-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
976
977 PR target/64460
978 * config/arm/arm.md (*<arith_shift_insn>_multsi): Set 'shift' to 2.
979 (*<arith_shift_insn>_shiftsi): Set 'shift' attr to 3.
980
981 2015-01-14 Matthew Fortune <matthew.fortune@imgtec.com>
982
983 * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Only infer an ISA
984 level from an ARCH; do not inject the default.
985 (MIPS_DEFAULT_ISA_LEVEL_SPEC): New macro split out from
986 MIPS_ISA_LEVEL_SPEC.
987 (MIPS_ISA_NAN2008_SPEC): Update comment.
988 (BASE_DRIVER_SELF_SPECS): Likewise.
989 * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Add
990 MIPS_DEFAULT_ISA_LEVEL_SPEC.
991 * config/mips/mti-elf.h (DRIVER_SELF_SPECS): Likewise.
992 * config/mips/mti-linux.h (DRIVER_SELF_SPECS): Likewise.
993 * config/mips/sde.h (DRIVER_SELF_SPECS): Likewise.
994
995 2015-01-14 Richard Biener <rguenther@suse.de>
996
997 PR tree-optimization/64493
998 PR tree-optimization/64495
999 * tree-vect-loop.c (vect_finalize_reduction): For double-reductions
1000 assign the proper vectorized PHI to the inner loop exit PHIs.
1001
1002 2015-01-14 Joey Ye <joey.ye@arm.com>
1003
1004 * config/arm/arm.c (arm_compute_save_reg_mask):
1005 Do not save lr in case of tail call.
1006 * config/arm/thumb2.md (*thumb2_pop_single): New pattern.
1007
1008 2015-01-14 Martin Uecker <uecker@eecs.berkeley.edu>
1009
1010 * tree-vrp.c (check_array_ref): Emit more warnings
1011 for warn_array_bounds >= 2.
1012 * common.opt: New option -Warray-bounds=.
1013 * doc/invoke.texi: Document -Warray-bounds=.
1014
1015 2015-01-14 Chung-Ju Wu <jasonwucj@gmail.com>
1016
1017 * config/nds32/nds32.opt (mforce-fp-as-gp): Remove.
1018 (mforbid-fp-as-gp): Remove.
1019 (mex9): Remove.
1020 * config/nds32/nds32-fp-as-gp.c (nds32_have_prologue_p): Remove.
1021 (nds32_symbol_load_store_p): Remove.
1022 (nds32_fp_as_gp_check_available): Clean up implementation.
1023 * config/nds32/nds32.h (LINK_SPEC): Remove -mforce-as-gp and -mex9
1024 cases.
1025 * config/nds32/nds32.c (nds32_asm_file_start): No need to consider
1026 fp-as-gp and ex9 cases.
1027
1028 2015-01-13 Jan Hubicka <hubicka@ucw.cz>
1029
1030 * tree-profile.c (init_ic_make_global_vars): Drop workaround
1031 for bintuils bug 14342.
1032 (init_ic_make_global_vars): Likewise.
1033 (gimple_init_edge_profiler): Likewise.
1034 (gimple_gen_ic_func_profiler): Likewise.
1035
1036 2015-01-13 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
1037
1038 * ipa-inline.c (inline_small_functions): Swap the operands in
1039 enum.
1040
1041 2015-01-13 Jan Hubicka <hubicka@ucw.cz>
1042
1043 PR ipa/64481
1044 * ipa-inline-analysis.c (node_growth_cache): Remove.
1045 (initialize_growth_caches): Do not initialize it.
1046 (free_growth_caches): Do not free it.
1047 (do_estimate_growth): Rename to ...
1048 (estimate_growth): ... this one; drop growth cache code.
1049 (growth_likely_positive): Always go the heuristics way.
1050 * ipa-inline.c (can_inline_edge_p): Walk through aliases.
1051 (reset_edge_caches): Do not reset node growth.
1052 (heap_edge_removal_hook): Do not maintain cache.
1053 (inline_small_functions): Likewise; strenghten sanity check.
1054 (ipa_inline): Do not maintain caches.
1055 * ipa-inline.h (node_growth_cache): Remove.
1056 (do_estimate_growth): Remove to ...
1057 (estimate_growth): this one; remove inline version.
1058 (reset_node_growth_cache): Remove.
1059
1060 2015-01-13 Jan Hubicka <hubicka@ucw.cz>
1061
1062 PR ipa/64565
1063 * ipa-inline.c (inline_small_functions): Update callee keys after
1064 resolving speculation
1065 (inline_small_functions): Always check monotonicity of the queue.
1066
1067 2015-01-13 Marek Polacek <polacek@redhat.com>
1068
1069 PR middle-end/64391
1070 * trans-mem.c (get_attrs_for): Return NULL_TREE if X is NULL_TREE.
1071
1072 2015-01-13 Jakub Jelinek <jakub@redhat.com>
1073
1074 PR rtl-optimization/64286
1075 * ree.c (combine_reaching_defs): Move part of comment earlier,
1076 remove !SCALAR_INT_MODE_P check.
1077 (add_removable_extension): Don't add vector mode
1078 extensions if all uses of the source register aren't the same
1079 vector extensions.
1080
1081 2015-01-13 Renlin Li <renlin.li@arm.com>
1082
1083 * config/arm/arm.h (CLZ_DEFINED_VALUE_AT_ZERO): Return 2.
1084 (CTZ_DEFINED_VALUE_AT_ZERO): Ditto.
1085
1086 2015-01-13 Martin Liska <mliska@suse.cz>
1087
1088 * ipa-icf.c (sem_function::equals_private): Call new functions
1089 cl_target_option_print_diff and cl_optimization_print_diff.
1090 * optc-save-gen.awk (cl_target_option_print_diff): New function.
1091 (cl_optimization_print_diff): Likewise.
1092 * opth-gen.awk: Likewise.
1093
1094 2015-01-13 Richard Sandiford <richard.sandiford@arm.com>
1095
1096 * config/aarch64/aarch64.md (subsi3, *subsi3_uxtw, subdi3)
1097 (*sub_<optab><ALLX:mode>_<GPI:mode>, *sub_<optab><SHORT:mode>_si_uxtw)
1098 (*sub_<optab><ALLX:mode>_shft_<GPI:mode>)
1099 (*sub_<optab><SHORT:mode>_shft_si_uxtw, *sub_<optab><mode>_multp2)
1100 (*sub_<optab>si_multp2_uxtw, *sub_uxt<mode>_multp2)
1101 (*sub_uxtsi_multp2_uxtw): Add stack pointer sources.
1102
1103 2015-01-13 Andrew Pinski <apinski@cavium.com>
1104
1105 * config/aarch64/aarch64.c (fusion_load_store): Check dest mode
1106 instead of src mode.
1107
1108 2015-01-13 Richard Biener <rguenther@suse.de>
1109
1110 PR lto/64373
1111 * lto-streamer-out.c (tree_is_indexable): Guard for NULL
1112 DECL_CONTEXT.
1113
1114 2015-01-13 Andrew Pinski <apinski@cavium.com>
1115
1116 * config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): Reject
1117 volatile mems.
1118 (aarch64_operands_adjust_ok_for_ldpstp): Likewise.
1119
1120 2015-01-13 Jakub Jelinek <jakub@redhat.com>
1121
1122 PR middle-end/63974
1123 * cfgexpand.c (expand_computed_goto): Don't call
1124 convert_memory_address here.
1125
1126 2015-01-13 Richard Biener <rguenther@suse.de>
1127
1128 PR tree-optimization/64406
1129 * tree-loop-distibution.c (pass_loop_distribution::execute):
1130 Reset the SCEV hashtable if we distributed anything.
1131
1132 2015-01-13 Richard Biener <rguenther@suse.de>
1133
1134 PR tree-optimization/64404
1135 * tree-vect-stmts.c (vectorizable_load): Reject conflicting
1136 SLP types for CSEd loads.
1137
1138 2015-01-13 Thomas Preud'homme <thomas.preudhomme@arm.com>
1139
1140 PR tree-optimization/64436
1141 * tree-ssa-math-opts.c (find_bswap_or_nop_1): Move code performing the
1142 merge of two symbolic numbers for a bitwise OR to ...
1143 (perform_symbolic_merge): This. Also fix computation of the range and
1144 end of the symbolic number corresponding to the result of a bitwise OR.
1145
1146 2015-01-13 Richard Biener <rguenther@suse.de>
1147
1148 PR tree-optimization/64568
1149 * tree-ssa-forwprop.c (pass_forwprop::execute): Properly
1150 release defs of removed stmts, avoid splitting TARGET_MEM_REFs.
1151
1152 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
1153
1154 * config/nds32/nds32.c (nds32_legitimate_address_p): Consider
1155 TARGET_CMODEL_LARGE and TARGET_CMODEL_MEDIUM cases.
1156
1157 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
1158
1159 * config/nds32/nds32.h (NDS32_SYMBOL_FLAG_RODATA): Define our own
1160 target-specific symbol_ref flag.
1161 (NDS32_SYMBOL_REF_RODATA_P): Define it to check if the symbol_ref
1162 resides in rodata section.
1163 * config/nds32/nds32.c (TARGET_ENCODE_SECTION_INFO): Define.
1164 (nds32_encode_section_info): New function.
1165
1166 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
1167
1168 * config/nds32/nds32.md (call): Use pseudo instruction bal which
1169 clobbers TA_REGNUM if large code model is specified.
1170 (call_register): Likewise.
1171 (call_immediate): Likewise.
1172 (call_value): Likewise.
1173 (call_value_register): Likewise.
1174 (call_value_immediate): Likewise.
1175
1176 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
1177
1178 * config/nds32/nds32.h (TARGET_CMODEL_SMALL): New macro.
1179 (TARGET_CMODEL_MEDIUM): New macro.
1180 (TARGET_CMODEL_LARGE): New macro.
1181 * config/nds32/nds32.c (nds32_asm_file_start): Display corresponding
1182 code model setting in assembly code.
1183
1184 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
1185
1186 * common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS):
1187 Remove MASK_GP_DIRECT flag.
1188 * config/nds32/nds32.h (MULTILIB_DEFAULTS): Have -mcmodel=medium as
1189 one of the multilib default options.
1190 * config/nds32/nds32.opt (mgp-direct): Remove.
1191 * config/nds32/t-mlibs (MULTILIB_OPTIONS): Use -mcmodel instead of
1192 -mgp-direct. We also remove unnecessary -mlittle-endian/-mbig-endian.
1193
1194 2015-01-13 Chung-Ju Wu <jasonwucj@gmail.com>
1195
1196 * config/nds32/nds32.opt (mcmodel): Add new option.
1197 * config/nds32/nds32-opts.h (nds32_cmodel_type): Add new enum type
1198 to describe code model.
1199
1200 2015-01-13 Oleg Endo <olegendo@gcc.gnu.org>
1201
1202 PR target/64479
1203 * rtlanal.c (set_reg_p): Handle SEQUENCE constructs.
1204
1205 2015-01-12 Kaz Kojima <kkojima@gcc.gnu.org>
1206
1207 * config/sh/sh.c (sh_atomic_assign_expand_fenv): New function.
1208 (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Define.
1209 (sh_builtin_get_fpscr, sh_builtin_set_fpscr): New variables.
1210 (sh_init_builtins): Record decls for __builtin_sh_get_fpscr and
1211 __builtin_sh_set_fpscr.
1212
1213 2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
1214
1215 * doc/invoke.texi ([-Wsuggest-attribute=]): Don't use parentheses
1216 after a funtion name just to indicate it is a function.
1217 ([-fsanitize-undefined-trap-on-error]): Likewise.
1218 ([-fdbg-cnt=]): Likewise.
1219 ([-mmemcpy]): Likewise.
1220 ([-mflush-func]): Likewise.
1221 ([-msynci]): Likewise.
1222
1223 2015-01-12 Sandra Loosemore <sandra@codesourcery.com>
1224
1225 * doc/invoke.texi ([-Wbad-function-cast]): Rewrite to avoid confusing
1226 example.
1227
1228 2015-01-12 Jakub Jelinek <jakub@redhat.com>
1229
1230 PR tree-optimization/64563
1231 * tree-vrp.c (vrp_evaluate_conditional): Check for VR_RANGE
1232 instead of != VR_VARYING.
1233
1234 PR target/64513
1235 * config/i386/i386.c (ix86_expand_prologue): Add
1236 REG_FRAME_RELATED_EXPR to %rax and %r10 pushes.
1237
1238 PR tree-optimization/64454
1239 * tree-vrp.c (simplify_div_or_mod_using_ranges): Optimize
1240 op0 % op1 into op0 if op0 is in range [-op1 + 1, op1 - 1]
1241 for signed or [0, op1 - 1] for unsigned modulo.
1242 (simplify_stmt_using_ranges): Call simplify_div_or_mod_using_ranges
1243 even if op1 does not satisfy integer_pow2p.
1244
1245 PR other/64370
1246 * sreal.c (sreal::to_double): Use ldexp instead of scalbnl.
1247
1248 2015-01-12 Jeff Law <law@redhat.com>
1249
1250 PR target/64461
1251 * config/m68k/m68k.md (truncsiqi2): Disable for TARGET_COLDFIRE.
1252 (trunchiqi2, truncsihi2): Similarly.
1253
1254 * config/h8300/h8300.c (Fpa): Use RTX_FRAME_RELATED_P directly
1255 rather than calling F.
1256
1257 2015-01-12 Bernd Edlinger <bernd.edlinger@hotmail.de>
1258
1259 * tsan.c (instrument_expr): Use force_gimple_operand.
1260 Use may_be_nonaddressable_p instead of is_gimple_addressable.
1261
1262 2015-01-12 Richard Biener <rguenther@suse.de>
1263
1264 PR tree-optimization/64530
1265 * tree-loop-distribution.c (pg_add_dependence_edges): Shuffle
1266 back dr1.
1267
1268 2015-01-12 Richard Biener <rguenther@suse.de>
1269
1270 PR middle-end/64357
1271 * tree-cfg.c (gimple_can_merge_blocks_p): Protect simple
1272 latches properly.
1273
1274 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1275
1276 * config/arm/arm.c (arm_cortex_a12_tune): Update entries to match
1277 Cortex-A17 tuning parameters.
1278 * config/arm/arm-cores.def (cortex-a12): Schedule for cortex-a17.
1279
1280 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1281
1282 * config/arm/arm-protos.h (tune_params): Add fuseable_ops field.
1283 * config/arm/arm.c (arm_macro_fusion_p): New function.
1284 (arm_macro_fusion_pair_p): Likewise.
1285 (TARGET_SCHED_MACRO_FUSION_P): Define.
1286 (TARGET_SCHED_MACRO_FUSION_PAIR_P): Likewise.
1287 (ARM_FUSE_NOTHING): Likewise.
1288 (ARM_FUSE_MOVW_MOVT): Likewise.
1289 (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,
1290 arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,
1291 arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,
1292 arm_cortex_a53_tune, arm_cortex_a57_tune, arm_cortex_a9_tune,
1293 arm_cortex_a12_tune, arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune
1294 arm_cortex_a5_tune): Specify fuseable_ops value.
1295
1296 2015-01-12 H.J. Lu <hongjiu.lu@intel.com>
1297
1298 PR bootstrap/64561
1299 * configure.ac (HAVE_LD_PIE_COPYRELOC): Update Linux/x86-64 linker
1300 test for PIE with copy reloc.
1301 * configure: Regenerated.
1302
1303 2015-01-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
1304
1305 * config/arm/arm.c (arm_load_tp): Use R0_REGNUM instead of constant 0
1306 in gen_rtx_REG.
1307 (arm_tls_descseq_addr): Likewise.
1308 (arm_gen_movmemqi): Likewise.
1309 (arm_expand_epilogue_apcs_frame): Likewise.
1310 (arm_expand_epilogue): Likewise.
1311 (arm_expand_prologue): Likewise. Use R1_REGNUM instead of constant 1
1312 in gen_rtx_REG.
1313
1314 2015-01-12 Martin Liska <mliska@suse.cz>
1315
1316 PR ipa/64550
1317 * ipa-icf-gimple.c (func_checker::compare_memory_operand): Compare
1318 volatility for correct operands.
1319
1320 2015-01-12 Martin Liska <mliska@suse.cz>
1321
1322 * ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication
1323 that a function is not leaf.
1324 (sem_function::compare_polymorphic_p): Likewise.
1325
1326 2015-01-12 Martin Liska <mliska@suse.cz>
1327
1328 * ipa-icf.c (sem_function::equals_wpa): Add indirect_calls as indication
1329 that a function is not leaf.
1330 (sem_function::compare_polymorphic_p): Likewise.
1331
1332 2015-01-12 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
1333
1334 * config/visium/visium.c: Add includes hashtab.h, hash-set.h,
1335 machmode.h, input.h, statistics.h, vec.h, double-int.h, real.h,
1336 fixed-value.h, alias.h, symtab.h, tree-core.h, wide-int.h, inchash.h,
1337 fold-const.h, tree-check.h.
1338
1339 2015-01-12 Jan Hubicka <hubicka@ucw.cz>
1340
1341 PR ipa/63967
1342 PR ipa/64425
1343 * ipa-inline.c (compute_uninlined_call_time,
1344 compute_inlined_call_time): Use counts for extra precision when
1345 needed possible.
1346 (big_speedup_p): Fix formating.
1347 (RELATIVE_TIME_BENEFIT_RANGE): Remove.
1348 (relative_time_benefit): Remove.
1349 (edge_badness): Turn DECL_DISREGARD_INLINE_LIMITS into hint;
1350 merge guessed and read profile paths.
1351 (inline_small_functions): Count only !optimize_size functions into
1352 initial size; be more lax about sanity check when profile is used;
1353 be sure to update inlined function profile when profile is read.
1354
1355 2015-01-12 Jan Hubicka <hubicka@ucw.cz>
1356
1357 PR ipa/63470
1358 * ipa-inline-analysis.c (inline_edge_duplication_hook): Adjust
1359 cost when edge becomes direct.
1360 * ipa-prop.c (make_edge_direct): Do not adjust when speculation
1361 is resolved or when introducing new speculation.
1362
1363 2015-01-12 Chen Gang <gang.chen.5i5j@gmail.com>
1364
1365 PR ipa/64551
1366 PR ipa/64552
1367 * ipa-icf.c (sem_function::equals_private): Use '&&' instead of
1368 '||' to fix typo issue.
1369
1370 * gcc/tree.h (target_opts_for_fn): Check NULL_TREE since it can
1371 accept and return NULL.
1372
1373 2015-01-12 Martin Liska <mliska@suse.cz>
1374
1375 * cgraph.c (cgraph_edge::remove_callee): Move function to header
1376 file for being inlined.
1377 (cgraph_set_edge_callee): Delete.
1378 (cgraph_edge::redirect_callee): Move function to header file
1379 for being inlined.
1380 (cgraph_edge::make_direct): Use new function.
1381 (cgraph_edge::dump_edge_flags): New function created from
1382 static dump_edge_flags function.
1383 (cgraph_node::dump): Use new function.
1384 (cgraph_edge::verify_count_and_frequency): New function created
1385 from verify_edge_count_and_frequency.
1386 (cgraph_edge::verify_corresponds_to_fndecl): New function created
1387 from verify_edge_corresponds_to_fndecl.
1388 (verify_edge_corresponds_to_fndecl): Delete.
1389 (cgraph_node::verify_node): Use new function.
1390 * cgraph.h (cgraph_edge::set_callee): New function.
1391 (cgraph_edge::dump_edge_flags): Likewise.
1392 (cgraph_edge::verify_corresponds_to_fndecl): Likewise.
1393
1394 2015-01-11 Jan Hubicka <hubicka@ucw.cz>
1395
1396 * ipa-utils.c (estimate_function_body_sizes): Do not
1397 free node params when called late with early=true.
1398
1399 2015-01-11 James Greenhalgh <james.greenhalgh@arm.com>
1400
1401 * doc/md.texi (Instruction Patterns): Rewrite text for
1402 clarity.
1403 (Example): Likewise.
1404
1405 2015-01-10 Sandra Loosemore <sandra@codesourcery.com>
1406
1407 * doc/invoke.texi (Option Summary): Break long lines.
1408 [(-fdiagnostics-color)]: Put long literal in @smallexample
1409 instead of inline.
1410 [(-fsanitize-recover)]: Likewise.
1411 [(-fdump-rtl-split*)]: Rewrite to fix over-full hbox.
1412 [(-ffast-math)]: Likewise.
1413 [(--param max-inline-insns-recursive)]: Likewise.
1414 [(--param max-inline-recursive-depth)]: Likewise.
1415 [(-mno-text-section-literals)]: Likewise.
1416
1417 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
1418
1419 * doc/install.texi: Update for libgomp being renamed from "GNU
1420 OpenMP Runtime Library" to "GNU Offloading and Multi Processing
1421 Runtime Library".
1422 * doc/sourcebuild.texi: Likewise.
1423
1424 2015-01-10 Anthony Green <green@moxielogic.com>
1425
1426 * config/moxie/moxie.c (moxie_option_override): Fix forcing of
1427 mul.x availability for moxiebox configuration.
1428
1429 2015-01-09 Anthony Green <green@moxielogic.com>
1430
1431 * config/moxie/moxie.md: Tabify assembly output.
1432
1433 2015-01-09 Anthony Green <green@moxielogic.com>
1434
1435 * config/moxie/moxie.md (CC_REG): Correct register definition.
1436
1437 2015-01-09 Sandra Loosemore <sandra@codesourcery.com>
1438
1439 * doc/invoke.texi ([-fvtable-verify]): Copy-edit and fix markup.
1440 ([-fvtv-debug], [-fvtv-counts]): Likewise. Correct location
1441 of log files.
1442
1443 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
1444
1445 * config/arm/arm.h (MAX_SYNC_LIBFUNC_SIZE): Delete semicolon.
1446
1447 2015-01-09 Bernd Schmidt <bernds@codesourcery.com>
1448 Jakub Jelinek <jakub@redhat.com>
1449
1450 PR middle-end/64412
1451 * lto-streamer.h (lto_stream_offload_p): New declaration.
1452 * lto-streamer.c (lto_stream_offload_p): New variable.
1453 * cgraphunit.c (ipa_passes): Set lto_stream_offload_p
1454 at the same time as section_name_prefix.
1455 * lto-streamer-out.c (hash_tree): Don't hash TREE_TARGET_OPTION
1456 if lto_stream_offload_p.
1457 * tree-streamer-out.c (streamer_pack_tree_bitfields): Don't
1458 stream TREE_TARGET_OPTION if lto_stream_offload_p.
1459 (write_ts_function_decl_tree_pointers): Don't
1460 stream DECL_FUNCTION_SPECIFIC_TARGET if lto_stream_offload_p.
1461 * tree-streamer-in.c (unpack_value_fields): Don't stream
1462 TREE_TARGET_OPTION in if ACCEL_COMPILER.
1463 (lto_input_ts_function_decl_tree_pointers): Don't stream
1464 DECL_FUNCTION_SPECIFIC_TARGET in if ACCEL_COMPILER.
1465 * lto-opts.c (lto_write_options): Use lto_stream_offload_p
1466 instead of section_name_prefix string comparisons.
1467
1468 2015-01-09 Jakub Jelinek <jakub@redhat.com>
1469
1470 PR rtl-optimization/64536
1471 * cfgrtl.c (rtl_tidy_fallthru_edge): Handle removal of degenerate
1472 tablejumps.
1473
1474 2015-01-09 Michael Collison <michael.collison@linaro.org>
1475
1476 * genattrtab.c (write_header): Include hash-set.h, machmode.h,
1477 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1478 fold-const.h, wide-int.h, and inchash.h when generating
1479 insn-attrtab.c.
1480 * genautomata.c (main) : Include hash-set.h, macInclude hash-set.h, machmode.h,
1481 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1482 fold-const.h, wide-int.h, and inchash.h when generating
1483 insn-automata.c.
1484 * genemit.c (main): Include hash-set.h, machmode.h,
1485 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1486 fold-const.h, wide-int.h, and inchash.h when generating
1487 insn-emit.c.
1488 * gengtype.c (open_base_files): Include hash-set.h, machmode.h,
1489 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1490 fold-const.h, wide-int.h, and inchash.h when generating
1491 gtype-desc.c.
1492 * genopinit.c (main): Include hash-set.h, machmode.h,
1493 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1494 fold-const.h, wide-int.h, and inchash.h when generating
1495 insn-opinit.c.
1496 * genoutput.c (output_prologue): Include hash-set.h, machmode.h,
1497 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1498 fold-const.h, wide-int.h, and inchash.h when generating
1499 insn-output.c.
1500 * genpeep.c (main): Include hash-set.h, machmode.h,
1501 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1502 fold-const.h, wide-int.h, and inchash.h when generating
1503 insn-peep.c.
1504 * genpreds.c (write_insn_preds_c): Include hash-set.h, machmode.h,
1505 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1506 fold-const.h, wide-int.h, and inchash.h when generating
1507 insn-preds.c.
1508 * optc-save-gen-awk: Include hash-set.h, machmode.h,
1509 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1510 fold-const.h, wide-int.h, and inchash.h when generating
1511 options-save.c.
1512 * opth-gen.awk: Change include guard from GCC_C_COMMON_H to GCC_C_COMMON_C
1513 when generating options.h.
1514 * alias.c: Include hash-set.h, machmode.h,
1515 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1516 fold-const.h, wide-int.h, and inchash.h due to
1517 flattening of tree.h.
1518 * asan.c: Ditto.
1519 * attribs.c: Ditto.
1520 * auto-inc-dec.c: Ditto.
1521 * auto-profile.c: Ditto
1522 * bb-reorder.c: Ditto.
1523 * bt-load.c: Include symtab.h due to flattening of tree.h.
1524 * builtins.c: Include hash-set.h, machmode.h,
1525 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1526 fold-const.h, wide-int.h, and inchash.h due to
1527 flattening of tree.h.
1528 * calls.c: Include hash-set.h, machmode.h,
1529 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1530 fold-const.h, wide-int.h, and inchash.h due to
1531 flattening of tree.h.
1532 * ccmp.c: Ditto.
1533 * cfgbuild.c: Include hash-set.h, machmode.h,
1534 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1535 fold-const.h, wide-int.h, and inchash.h due to flattening of tree.h.
1536 * cfg.c: Ditto.
1537 * cfgcleanup.c: Ditto.
1538 * cfgexpand.c: Ditto.
1539 * cfghooks.c: Ditto.
1540 * cfgloop.c: Include symtab.h, fold-const.h, and
1541 inchash.h due to flattening of tree.h.
1542 * cfgloopmanip.c: Ditto.
1543 * cfgrtl.c: Include hash-set.h, machmode.h,
1544 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1545 fold-const.h, wide-int.h, and inchash.h due to
1546 flattening of tree.h.
1547 * cgraphbuild.c: Ditto.
1548 * cgraph.c: Ditto.
1549 * cgraphclones.c: Ditto.
1550 * cgraphunit.c: Ditto.
1551 * cilk-common.c: Ditto.
1552 * combine.c: Ditto.
1553 * combine-stack-adj.c: Include symbol.h due to flattening of tree.h.
1554 * config/aarch64/aarch64-builtins.c: Include hash-set.h, machmode.h,
1555 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1556 fold-const.h, wide-int.h, and inchash.h due to
1557 flattening of tree.h.
1558 * config/aarch64/aarch64.c: Ditto.
1559 * config/alpha/alpha.c: Ditto.
1560 * config/arc/arc.c: Ditto.
1561 * config/arm/aarch-common.c: Ditto.
1562 * config/arm/arm-builtins.c: Ditto.
1563 * config/arm/arm.c: Ditto.
1564 * config/arm/arm-c.c: Ditto.
1565 * config/avr/avr.c: Ditto.
1566 * config/avr/avr-c.c: Ditto.
1567 * config/avr/avr-log.c: Ditto.
1568 * config/bfin/bfin.c: Ditto.
1569 * config/c6x/c6x.c: Ditto.
1570 * config/cr16/cr16.c: Ditto.
1571 * config/cris/cris.c: Ditto.
1572 * config/darwin.c: Ditto.
1573 * config/darwin-c.c: Ditto.
1574 * config/default-c.c: Ditto.
1575 * config/epiphany/epiphany.c: Ditto.
1576 * config/fr30/fr30.c: Ditto.
1577 * config/frv/frv.c: Ditto.
1578 * config/glibc-c.c: Ditto.
1579 * config/h8300/h8300.c: Ditto.
1580 * config/i386/i386.c: Ditto.
1581 * config/i386/i386-c.c: Ditto.
1582 * config/i386/msformat.c: Ditto.
1583 * config/i386/winnt.c: Ditto.
1584 * config/i386/winnt-cxx.c: Ditto.
1585 * config/i386/winnt-stubs.c: Ditto.
1586 * config/ia64/ia64.c: Ditto.
1587 * config/ia64/ia64-c.c: Ditto.
1588 * config/iq2000/iq2000.c: Ditto.
1589 * config/lm32/lm32.c: Include symtab.h, fold-const.h,
1590 wide-int.h, and inchash.h due to flattening of tree.h.
1591 * config/m32c/m32c.c: Include hash-set.h, machmode.h,
1592 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1593 fold-const.h, wide-int.h, and inchash.h due to
1594 flattening of tree.h.
1595 * config/m32c/m32c-pragma.c: Ditto.
1596 * config/m32c/m32cr.c: Ditto.
1597 * config/m68/m68k.c: Ditto.
1598 * config/mcore/mcore.c: Ditto.
1599 * config/mep/mep.c: Ditto.
1600 * config/mep/mep-pragma.c: Ditto.
1601 * config/microblaze/microblaze.c: Ditto.
1602 * config/microblaze/microblaze-c.c: Ditto.
1603 * config/mips/mips.c: Ditto.
1604 * config/mmix/mmix.c: Include symtab.h, fold-const.h,
1605 wide-int.h, and inchash.h due to flattening of tree.h.
1606 * config/mn10300/mn10300.c: Include hash-set.h, machmode.h,
1607 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1608 fold-const.h, wide-int.h, and inchash.h due to
1609 flattening of tree.h.
1610 * config/moxie/moxie.c: Ditto.
1611 * config/msp430/msp430.c: Ditto.
1612 * config/msp430/msp430-c.c: Ditto.
1613 * config/nds32/nds32.c: Ditto.
1614 * config/nds32/nds32-cost.c: Ditto.
1615 * config/nds32/nds32-fp-as-gp.c: Ditto.
1616 * config/nds32/nds32-intrinsic.c: Ditto.
1617 * config/nds32/nds32-isr.c: Ditto.
1618 * config/nds32/nds32-md-auxillary.c: Ditto.
1619 * config/nds32/nds32-memory-manipulationx.c: Ditto.
1620 * config/nds32/nds32-pipelines-auxillary.c: Ditto.
1621 * config/nds32/nds32-predicates.c: Ditto.
1622 * config/nios2/nios2.c: Ditto.
1623 * config/nvptx/nvptx.c: Ditto.
1624 * config/pa/pa.c: Ditto.
1625 * config/pdp11/pdp11x.c: Include symtab.h, fold-const.h,
1626 wide-int.h, and inchash.h due to flattening of tree.h.
1627 * config/rl78/rl78.c: Include hash-set.h, machmode.h,
1628 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1629 fold-const.h, wide-int.h, and inchash.h due to
1630 flattening of tree.h.
1631 * config/rl78/rl78-cx.c: Ditto.
1632 * config/rs6000/rs6000.c: Ditto.
1633 * config/rs6000/rs6000-c.c: Ditto.
1634 * config/rx/rx.c: Ditto.
1635 * config/s390/s390.c: Ditto.
1636 * config/sh/sh.c: Ditto.
1637 * config/sh/sc.c: Ditto.
1638 * config/sh/sh-mem.cc: Ditto.
1639 * config/sh/sh_treg_combine.cc: Include symtab.h, inchash.h and tree.h
1640 due to flattening of tree.h.
1641 Remove include of tree-core.h.
1642 * config/sol2.c: Include hash-set.h, machmode.h,
1643 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1644 fold-const.h, wide-int.h, and inchash.h due to
1645 flattening of tree.h.
1646 * config/sol2-c.c: Ditto.
1647 * config/sol2-cxx.c: Ditto.
1648 * config/sol2-stubs.c: Ditto.
1649 * config/sparc/sparc.c: Ditto.
1650 * config/sparc/sparc-cx.c: Ditto.
1651 * config/spu/spu.c: Ditto.
1652 * config/spu/spu-c.c: Ditto
1653 * config/storym16/stormy16.c: Ditto.
1654 * config/tilegx/tilegx.c: Include symtab.h, fold-const.h,
1655 wide-int.h, and inchash.h due to flattening of tree.h.
1656 * config/tilepro/gen-mul-tables.cc: Include symtab.h in generated file.
1657 * config/tilegx/tilegx-c.c: Include hash-set.h, machmode.h,
1658 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1659 fold-const.h, wide-int.h, and inchash.h due to
1660 flattening of tree.h.
1661 * config/tilepro/tilepro.c: Include symtab.h, fold-const.h,
1662 wide-int.h, and inchash.h due to flattening of tree.h.
1663 * config/tilepro/tilepro-c.c: Include hash-set.h, machmode.h,
1664 vec.h, double-int.h, input.h, alias.h, symtab.h, options.h
1665 fold-const.h, wide-int.h, and inchash.h due to
1666 flattening of tree.h.
1667 * config/v850/v850.c: Ditto.
1668 * config/v850/v850-c.c: Ditto.
1669 * config/vax/vax.c: Ditto.
1670 * config/vms/vms.c: Ditto.
1671 * config/vms/vms-c.c: Ditto.
1672 * config/vxworks.c: Ditto.
1673 * config/winnt-c.c: Ditto.
1674 * config/xtensa/xtensa.c: Include symtab.h, fold-const.h,
1675 wide-int.h, and inchash.h due to flattening of tree.h.
1676 * convert.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1677 input.h, alias.h, symtab.h, options.h, fold-const.h,
1678 wide-int.h, and inchash.h due to flattening of tree.h.
1679 * coverage.c: Ditto.
1680 * cppbuiltin.c: Ditto.
1681 * cprop.c: Ditto.
1682 * cse.c: Add include of symtab.h due to flattening of tree.h.
1683 * cselib.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1684 input.h, alias.h, symtab.h, options.h, fold-const.h,
1685 wide-int.h, and inchash.h due to flattening of tree.h.
1686 * data-streamer.c: Ditto.
1687 * data-streamer-in.c: Ditto.
1688 * data-streamer-out.c: Ditto.
1689 * dbxout.c: Ditto.
1690 * dce.c: Ditto.
1691 * ddg.c: Add include of symtab.h due to flattening of tree.h.
1692 * debug.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1693 input.h, alias.h, symtab.h, options.h, fold-const.h,
1694 wide-int.h, and inchash.h due to flattening of tree.h.
1695 * dfp.c: Ditto.
1696 * df-scan.c: Ditto.
1697 * dojump.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1698 input.h, alias.h, symtab.h, options.h, fold-const.h,
1699 wide-int.h, inchash.h and real.h due to flattening of tree.h.
1700 * double-int.c: Ditto.
1701 * dse.c: Ditto.
1702 * dumpfile.c: Ditto.
1703 * dwarf2asm.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1704 input.h, alias.h, symtab.h, fold-const.h,
1705 wide-int.h, inchash.h and real.h due to flattening of tree.h.
1706 * dwarf2cfi.c: Ditto.
1707 * dwarf2out.c: Ditto.
1708 * emit-rtl.c: Ditto.
1709 * except.c: Ditto.
1710 * explow.c: Ditto.
1711 * expmed.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1712 input.h, alias.h, symtab.h, fold-const.h,
1713 wide-int.h, and inchash.h due to flattening of tree.h.
1714 * expr.c: Ditto.
1715 * final.c: Ditto.
1716 * fixed-value.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1717 input.h, alias.h, symtab.h, fold-const.h,
1718 wide-int.h, inchash.h and fixed-value.h due to flattening of tree.h.
1719 * fold-const.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1720 input.h, alias.h, symtab.h, fold-const.h,
1721 wide-int.h, and inchash.h due to flattening of tree.h.
1722 Relocate inline function convert_to_ptrofftype_loc from tree.h.
1723 Relocate inline function fold_build_pointer_plus_loc from tree.h.
1724 Relocate inline function fold_build_pointer_plus_hwi_loc from tree.h.
1725 * fold-const.h: Relocate macro convert_to_ptrofftype from tree.h.
1726 Relocate macro fold_build_pointer_plus to relocate from tree.h.h.
1727 Relocate macro fold_build_pointer_plus_hwi from tree.h.
1728 Add prototype for convert_to_ptrofftype_loc relocated from tree.h.
1729 Add prototype for fold_build_pointer_plus_loc relocated from tree.h.
1730 Add prototype for fold_build_pointer_plus_hwi_loc relocated from tree.h.
1731 * function.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1732 input.h, alias.h, symtab.h, fold-const.h,
1733 wide-int.h, and inchash.h due to flattening of tree.h.
1734 * gcc-plugin.h: Include statistics.h, double-int.h, real.h, fixed-value.h,
1735 alias.h, flags.h, and symtab.h due to flattening of tree.h
1736 * gcse.c: Ditto.
1737 * generic-match-head.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1738 input.h, alias.h, symtab.h, options.h, fold-const.h,
1739 wide-int.h, and inchash.h due to flattening of tree.h.
1740 * ggc-page.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1741 input.h, alias.h, symtab.h, fold-const.h,
1742 wide-int.h, and inchash.h due to flattening of tree.h.
1743 * gimple-builder.c: Ditto.
1744 * gimple.c: Ditto.
1745 * gimple-expr.c: Ditto.
1746 * gimple-fold.c: Ditto.
1747 * gimple-iterator.c: Ditto.
1748 * gimple-low.c: Ditto.
1749 * gimple-match-head.c: Ditto.
1750 * gimple-pretty-print.c: Ditto.
1751 * generic-ssa-isolate-paths.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1752 input.h, alias.h, symtab.h, options.h, fold-const.h,
1753 wide-int.h, and inchash.h due to flattening of tree.h.
1754 * gimple-ssa-strength-reduction.c: Ditto.
1755 * gimple-streamer-in.c: Ditto.
1756 * gimple-streamer-out.c: Ditto.
1757 * gimple-walk.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1758 input.h, alias.h, symtab.h, fold-const.h,
1759 wide-int.h, and inchash.h due to flattening of tree.h.
1760 * gimplify.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1761 input.h, alias.h, symtab.h, options.h, fold-const.h,
1762 wide-int.h, and inchash.h due to flattening of tree.h.
1763 * gimplify-me.c: Ditto.
1764 * graphite-blocking.c: Ditto.
1765 * graphite.c: Ditto.
1766 * graphite-dependencies.c: Ditto.
1767 * graphite-interchange.c: Ditto.
1768 * graphite-isl-ast-to-gimple.c: Ditto.
1769 * graphite-optimize-isl.c: Ditto.
1770 * graphite-poly.c: Ditto.
1771 * graphite-scop-detection.c: Ditto.
1772 * graphite-sese-to-poly.c: Ditto.
1773 * hw-doloop.c: Include symtab.h due to flattening of tree.h.
1774 * ifcvt.c: Ditto.
1775 * init-regs.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1776 input.h, alias.h, symtab.h, fold-const.h,
1777 wide-int.h, and inchash.h due to flattening of tree.h.
1778 * internal-fc.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1779 input.h, alias.h, symtab.h,options.h, fold-const.h,
1780 wide-int.h, and inchash.h due to flattening of tree.h.
1781 * ipa.c: Ditto.
1782 * ipa-chkp.c: Ditto.
1783 * ipa-comdats.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1784 input.h, alias.h, symtab.h, fold-const.h,
1785 wide-int.h, and inchash.h due to flattening of tree.h.
1786 * ipa-cp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1787 input.h, alias.h, symtab.h,options.h, fold-const.h,
1788 wide-int.h, and inchash.h due to flattening of tree.h.
1789 * ipa-devirt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1790 input.h, alias.h, symtab.h, fold-const.h,
1791 wide-int.h, and inchash.h due to flattening of tree.h.
1792 * ipa-icf.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1793 input.h, alias.h, symtab.h,options.h, fold-const.h,
1794 wide-int.h, and inchash.h due to flattening of tree.h.
1795 * ipa-icf-gimple.c: Ditto.
1796 * ipa-inline-analysis.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1797 input.h, alias.h, symtab.h, fold-const.h,
1798 wide-int.h, and inchash.h due to flattening of tree.h.
1799 * ipa-inline.c: Ditto.
1800 * ipa-inline-transform.c: Ditto.
1801 * ipa-polymorhpic-call.c: Ditto.
1802 * ipa-profile.c: Ditto.
1803 * ipa-prop.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1804 input.h, alias.h, symtab.h, options.h, fold-const.h,
1805 wide-int.h, and inchash.h due to flattening of tree.h.
1806 * ipa-pure-const.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1807 input.h, alias.h, symtab.h, fold-const.h,
1808 wide-int.h, and inchash.h due to flattening of tree.h.
1809 * ipa-ref.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1810 input.h, alias.h, symtab.h, options.h, fold-const.h,
1811 wide-int.h, and inchash.h due to flattening of tree.h.
1812 * ipa-reference.c: Ditto.
1813 * ipa-split.c: Ditto.
1814 * ipa-utils.c: Ditto.
1815 * ipa-visbility.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1816 input.h, alias.h, symtab.h, fold-const.h,
1817 wide-int.h, and inchash.h due to flattening of tree.h.
1818 * ira.c: Ditto.
1819 * ira-color.c: Include hash-set.h due to flattening of tree.h.
1820 * ira-costs.c: Ditto.
1821 * ira-emit.c: Ditto.
1822 * jump.c: Include symtab.h due to flattening of tree.h.
1823 * langhooks.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1824 input.h, alias.h, symtab.h, fold-const.h,
1825 wide-int.h, and inchash.h due to flattening of tree.h.
1826 * loop-doloop.c: Include symtab.h due to flattening of tree.h.
1827 * loop-init.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1828 input.h, alias.h, symtab.h, fold-const.h,
1829 wide-int.h, and inchash.h due to flattening of tree.h.
1830 * loop-invariant.c: Include symtab.h due to flattening of tree.h.
1831 * loop-iv.c: Ditto.
1832 * loop-unroll.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1833 input.h, alias.h, symtab.h, fold-const.h,
1834 wide-int.h, and inchash.h due to flattening of tree.h.
1835 * lower-subreg.c: Ditto.
1836 * lra-assigns.c: Include symtab.h due to flattening of tree.h.
1837 * lra.c: Include symtab.h, fold-const.h, wide-int.h and inchash.h
1838 due to flattening of tree.h.
1839 * lra-coalesce.c: Include symtab.h due to flattening of tree.h.
1840 * lra-constraints.c: Ditto.
1841 * lra-eliminations.c: Ditto.
1842 * lra-livesc: Ditto.
1843 * lra-remat.c: Ditto.
1844 * lra-spills.c: Ditto.
1845 * lto-cgraph.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1846 input.h, alias.h, symtab.h, fold-const.h,
1847 wide-int.h, and inchash.h due to flattening of tree.h.
1848 * lto-compress.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1849 input.h, alias.h, symtab.h, options, fold-const.h,
1850 wide-int.h, and inchash.h due to flattening of tree.h.
1851 * lto-opts.c: Ditto.
1852 * lto-section-in.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1853 input.h, alias.h, symtab.h, fold-const.h,
1854 wide-int.h, and inchash.h due to flattening of tree.h.
1855 * lto-section-out.c: Ditto.
1856 * lto-streamer.c: Ditto.
1857 * lto-streamer-in.c: Ditto.
1858 * lto-streamer-out.c: Ditto.
1859 * modulo-sched.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1860 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1861 inchash.h due to flattening of tree.h.
1862 * omega.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1863 input.h, alias.h, symtab.h, options, fold-const.h,
1864 wide-int.h, and inchash.h due to flattening of tree.h.
1865 * omega-low.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1866 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1867 inchash.h due to flattening of tree.h.
1868 * optabs.c: Ditto.
1869 * opts-global.c: Ditto.
1870 * passes.c: Ditto.
1871 * plugin.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1872 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1873 inchash.h due to flattening of tree.h.
1874 * postreload.c: Include symtab.h due to flattening of tree.h.
1875 * postreload-gcse.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1876 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1877 inchash.h due to flattening of tree.h.
1878 * predict.c: Ditto.
1879 * print-rtl.c: Ditto.
1880 * print-tree.c: Ditto.
1881 * profile.c: Include symtab.h, fold-const.h
1882 and inchash.h due to flattening of tree.h.
1883 * real.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1884 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1885 inchash.h due to flattening of tree.h.
1886 * realmpfr.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1887 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1888 inchash.h due to flattening of tree.h.
1889 * recog.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1890 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1891 inchash.h due to flattening of tree.h.
1892 * ree.c: Ditto.
1893 * reginfo.c: Ditto.
1894 * reg-stack.c: Ditto.
1895 * reload1.c: Include symtab.h, fold-const.h, wide-int.h
1896 and inchash.h due to flattening of tree.h.
1897 * reload.c: Include symtab.h due to flattening of tree.h.
1898 * reorg.c: Ditto.
1899 * rtlanal.c: Include symtab.h, fold-const.h, wide-int.h
1900 and inchash.h due to flattening of tree.h.
1901 * rtl-chkp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1902 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1903 inchash.h due to flattening of tree.h.
1904 * rtlhooks.c: Include symtab.h due to flattening of tree.h.
1905 * sanopt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1906 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1907 inchash.h due to flattening of tree.h.
1908 * sched-deps.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1909 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1910 inchash.h due to flattening of tree.h.
1911 * sched-vis.c: Ditto.
1912 * sdbout.c: Ditto.
1913 * sel-sched.c: Include symtab.h, fold-const.h, wide-int.h
1914 and inchash.h due to flattening of tree.h.
1915 * sel-sched-ir.c: Ditto.
1916 * sese.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1917 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1918 inchash.h due to flattening of tree.h.
1919 * shrink-wrap.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1920 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1921 inchash.h due to flattening of tree.h.
1922 * simplify-rtx.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1923 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1924 inchash.h due to flattening of tree.h.
1925 * stack-ptr-mod.c: Ditto.
1926 * stmt.c: Ditto.
1927 * store-motion.c: Ditto.
1928 * store-layout.c: Ditto.
1929 * stringpool.c: Ditto.
1930 * symtab.c: Ditto.
1931 * target-globals.c: Ditto.
1932 * targhooks.c: Ditto.
1933 * toplev.c: Ditto.
1934 * tracer.c: Ditto.
1935 * trans-mem.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1936 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1937 inchash.h due to flattening of tree.h.
1938 * tree-affine.c: Ditto.
1939 * tree-browser.c: Ditto.
1940 * tree.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1941 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1942 inchash.h due to flattening of tree.h.
1943 * tree-call-cdce.c: Include symtab.h, alias.h, double-int.h,
1944 fold-const.h, wide-int.h, inchash.h and real.h due to
1945 flattening of tree.h.
1946 * tree-cfg.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1947 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
1948 inchash.h due to flattening of tree.h.
1949 * tree-cfgcleanup.c: Ditto.
1950 * tree-chkp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1951 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1952 inchash.h due to flattening of tree.h.
1953 * tree-chkp-opt.c: Ditto.
1954 * tree-chrec.c: Ditto.
1955 * tree-chkp-opt.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1956 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
1957 real.h due to flattening of tree.h.
1958 * tree-core.h: Flatten header file by removing all #include statements.
1959 * tree-data-ref.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1960 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1961 inchash.h due to flattening of tree.h.
1962 * tree-dfa.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1963 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
1964 real.h due to flattening of tree.h.
1965 * tree-diagnostic.c: Ditto.
1966 * tree-dump.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1967 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h, real.h and
1968 fixed-value.h due to flattening of tree.h.
1969 * tree-dfa.c: Ditto.
1970 * tree-eh.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1971 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h and
1972 real.h due to flattening of tree.h.
1973 * tree-emutls.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1974 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1975 inchash.h due to flattening of tree.h.
1976 * tree.h: Flatten header files by removing all includes except tree-core.h.
1977 Remove inline function convert_to_ptrofftype_loc to relocate to fold-const.c.
1978 Remove macro convert_to_ptrofftype to relocate to fold-const.h.
1979 Remove inline function fold_build_pointer_plus_loc to relocate to fold-const.c.
1980 Remove macro fold_build_pointer_plus to relocate to fold-const.h.
1981 Remove inline function fold_build_pointer_plus_hwi_loc to relocate to fold-const.c.
1982 Remove macro fold_build_pointer_plus_hwi to relocate to fold-const.h.
1983 * tree-if-conv.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1984 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h, real.h and
1985 fixed-value.h due to flattening of tree.h.
1986 * tree-inline.c: Ditto.
1987 * tree-into-ssa.c: Ditto.
1988 * tree-iterator.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1989 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
1990 inchash.h due to flattening of tree.h.
1991 * tree-loop-distribution.c: Ditto.
1992 * tree-nested.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1993 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
1994 due to flattening of tree.h.
1995 * tree-nrv.c: Ditto.
1996 * tree-object-size.c: Ditto.
1997 * tree-outof-ssa.c: Ditto.
1998 * tree-parloops.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
1999 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h, and
2000 inchash.h due to flattening of tree.h.
2001 * tree-phinodes.c: Ditto.
2002 * tree-predcom.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2003 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2004 due to flattening of tree.h.
2005 * tree-pretty-print.c: Ditto.
2006 * tree-profile.c: double-int.h, input.h, alias.h, symtab.h,
2007 fold-const.h, wide-int.h and inchash.h due to flattening of tree.h.
2008 * tree-scalar-evolution.c: Include hash-set.h, machmode.h, vec.h,
2009 double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
2010 wide-int.h and inchash.h due to flattening of tree.h.
2011 * tree-sra.c: Include vec.h, double-int.h,
2012 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, and
2013 inchash.h due to flattening of tree.h.
2014 * tree-ssa-alias.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2015 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2016 due to flattening of tree.h.
2017 * tree-ssa.c: Ditto.
2018 * tree-ssa-ccp.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2019 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h
2020 and real.h due to flattening of tree.h.
2021 * tree-ssa-coalesce.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2022 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2023 due to flattening of tree.h.
2024 * tree-ssa-copy.c: Ditto.
2025 * tree-ssa-copyrename.c: Ditto.
2026 * tree-ssa-dce.c: Ditto.
2027 * tree-ssa-dom.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2028 input.h, alias.h, symtab.h, fold-const.h, wide-int.h, inchash.h
2029 and real.h due to flattening of tree.h.
2030 * tree-ssa-dse.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2031 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2032 due to flattening of tree.h.
2033 * tree-ssa-forwprop.c: Ditto.
2034 * tree-ssa-ifcombine.c: Ditto.
2035 * tree-ssa-live.c: Ditto.
2036 * tree-ssa-loop.c: Ditto.
2037 * tree-ssa-loop-ch.c: Ditto.
2038 * tree-ssa-loop-im.c: Ditto.
2039 * tree-ssa-loop-ivcanon.c: Ditto.
2040 * tree-ssa-loop-ivopts.c: Ditto.
2041 * tree-ssa-loop-manip.c: Ditto.
2042 * tree-ssa-loop-niter.c: Ditto.
2043 * tree-ssa-loop-prefetch.c: Ditto.
2044 * tree-ssa-loop-unswitch.c: Ditto.
2045 * tree-ssa-loop-math-opts.c: Ditto.
2046 * tree-ssanames.c: Ditto.
2047 * tree-ssa-operands.c: Ditto.
2048 * tree-ssa-phiopt.c: Ditto.
2049 * tree-ssa-phiprop.c: Ditto.
2050 * tree-ssa-pre.c: Ditto.
2051 * tree-ssa-propagate.c: Ditto.
2052 * tree-ssa-reassoc.c: Ditto.
2053 * tree-ssa-sccvn.c: Ditto.
2054 * tree-ssa-sink.c: Ditto.
2055 * tree-ssa-strlen.c: Include hash-set.h, machmode.h, vec.h,
2056 double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
2057 wide-int.h and inchash.h due to flattening of tree.h.
2058 * tree-ssa-structalias.c: double-int.h, input.h, alias.h, symtab.h,
2059 fold-const.h, wide-int.h and inchash.h due to flattening of tree.h.
2060 * tree-ssa-tail-merge.c: Include hash-set.h, machmode.h, vec.h,
2061 double-int.h, input.h, alias.h, symtab.h, fold-const.h,
2062 wide-int.h and inchash.h due to flattening of tree.h.
2063 * tree-ssa-ter.c: Ditto.
2064 * tree-ssa-threadedge.c: Ditto.
2065 * tree-ssa-threadupdate.c: Include hash-set.h, machmode.h, vec.h,
2066 double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
2067 wide-int.h and inchash.h due to flattening of tree.h.
2068 * tree-ssa-uncprop.c: Include hash-set.h, machmode.h, vec.h,
2069 double-int.h, input.h, alias.h, symtab.h, fold-const.h,
2070 wide-int.h and inchash.h due to flattening of tree.h.
2071 * tree-ssa-uninit.c: Ditto.
2072 * tree-stdarg.c: Include vec.h, double-int.h, input.h, alias.h,
2073 symtab.h, fold-const.h, wide-int.h and inchash.h due to flattening
2074 of tree.h.
2075 * tree-streamer.c: Include vec.h, double-int.h, input.h, alias.h,
2076 symtab.h, options.h, fold-const.h, wide-int.h and
2077 inchash.h due to flattening of tree.h.
2078 * tree-streamer-in.c: Include hash-set.h, machmode.h, vec.h,
2079 double-int.h, input.h, alias.h, symtab.h, options.h, fold-const.h,
2080 wide-int.h, inchash.h, real.h and fixed-value.h due to flattening
2081 of tree.h.
2082 * tree-streamer-out.c: Dittoo.
2083 * tree-switch-conversion.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2084 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2085 due to flattening of tree.h.
2086 * tree-tailcall.c: Ditto.
2087 * tree-vect-data-refs.c: Ditto.
2088 * tree-vect-generic.c: Include hash-set.h, machmode.h, vec.h, double-int.h, input.h,
2089 alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
2090 due to flattening of tree.h.
2091 * tree-vect-loop.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2092 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2093 due to flattening of tree.h.
2094 * tree-vect-loop-manip.c: Ditto.
2095 * tree-vectorizer.c: Ditto.
2096 * tree-vect-patterns.c: Ditto.
2097 * tree-vect-slp.c: Ditto.
2098 * tree-vect-stmts.c: Ditto.
2099 * tree-vrp.c: Ditto.
2100 * tsan.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2101 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
2102 due to flattening of tree.h.
2103 * ubsan.c: Ditto.
2104 * value-prof.c.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2105 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2106 due to flattening of tree.h.
2107 * varasm.c: Ditto.
2108 * varpool.c: Ditto.
2109 * var-tracking.c: Ditto.
2110 * vmsdbgout.c: Ditto.
2111 * vtable-verify.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
2112 input.h, alias.h, symtab.h, options.h, fold-const.h, wide-int.h and inchash.h
2113 due to flattening of tree.h.
2114 * wide-int.cc: Include hash-set.h, machmode.h, vec.h, double-int.h,
2115 input.h, alias.h, symtab.h, fold-const.h, wide-int.h and inchash.h
2116 due to flattening of tree.h.
2117 * xcoffout.c: Ditto.
2118
2119 2015-01-09 Tom de Vries <tom@codesourcery.com>
2120
2121 PR rtl-optimization/64539
2122 * regcprop.c (kill_clobbered_values): Factor out of ...
2123 (copyprop_hardreg_forward_1): ... here. Use kill_clobbered_values
2124 instead of note_stores with kill_clobbered_value.
2125
2126 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
2127
2128 * ginclude/unwind-arm-common.h: Revert previous commit.
2129
2130 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
2131
2132 * config.gcc (arm*-*-freebsd*): New configuration.
2133 * config/arm/freebsd.h: New file.
2134 * config.host: Add extra components for arm*-*-freebsd*.
2135 * config/arm/arm.h: Introduce MAX_SYNC_LIBFUNC_SIZE.
2136 * config/arm/arm.c (arm_init_libfuncs): Use MAX_SYNC_LIBFUNC_SIZE.
2137
2138 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
2139
2140 * config/rs6000/rtems.h (CPP_OS_RTEMS_SPEC): Define __PPC_CPU_E6500__
2141 for -mcpu=e6500.
2142 * config/rs6000/t-rtems: Add e6500 multilibs.
2143
2144 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
2145
2146 * config/rs6000/t-rtems: Add -mno-spe to soft-float multilib for
2147 MPC8540.
2148
2149 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
2150
2151 * config/rs6000/t-rtems: Use MULTILIB_REQUIRED instead of
2152 MULTILIB_EXCEPTIONS.
2153
2154 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
2155
2156 * config/arm/t-rtems: Use MULTILIB_REQUIRED instead of
2157 MULTILIB_EXCEPTIONS.
2158
2159 2015-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
2160
2161 * config/arm/t-rtems-eabi: Rename to...
2162 * config/arm/t-rtems: ...this.
2163 * config/arm/rtems-eabi.h: Rename to...
2164 * config/arm/rtems.h: ...this.
2165 * config.gcc (arm*-*-rtems*): Reflect changes above.
2166
2167 2015-01-09 Richard Biener <rguenther@suse.de>
2168
2169 PR tree-optimization/64410
2170 * tree-ssa.c (non_rewritable_lvalue_p): Allow REALPART/IMAGPART_EXPR
2171 on the LHS.
2172 (execute_update_addresses_taken): Deal with that.
2173 * tree-ssa-forwprop.c (pass_forwprop::execute): Use component-wise
2174 loads/stores for complex variables.
2175
2176 2015-01-09 Martin Liska <mliska@suse.cz>
2177
2178 * ipa-icf-gimple.c (func_checker::compare_ssa_name): Enhance SSA
2179 name comparison.
2180 (func_checker::compare_memory_operand): New function.
2181 (func_checker::compare_operand): Split case to newly
2182 added functions.
2183 (func_checker::compare_cst_or_decl): New function.
2184 (func_checker::compare_gimple_call): Identify
2185 memory operands.
2186 (func_checker::compare_gimple_assign): Likewise.
2187 * ipa-icf-gimple.h: New function.
2188
2189 2015-01-09 Martin Liska <mliska@suse.cz>
2190
2191 PR ipa/64503
2192 * sreal.c (sreal::dump): Change unsigned format to signed for
2193 m_exp value.
2194 (sreal::to_double): Replace exp2 with scalbln.
2195
2196 2015-01-09 Martin Liska <mliska@suse.cz>
2197
2198 * cgraphunit.c (cgraph_node::create_wrapper): Fix level of indentation.
2199 * ipa-icf.c (sem_function::equals_private): Add support for target and
2200 (sem_item_optimizer::merge_classes): Remove redundant function
2201 optimization flags comparison.
2202 * tree.h (target_opts_for_fn): New function.
2203
2204 2015-01-09 Tom de Vries <tom@codesourcery.com>
2205
2206 * omp-low.c (expand_omp_for_static_chunk): Fix assert.
2207
2208 2015-01-09 Kito Cheng <kito@0xlab.org>
2209
2210 PR rtl-optimization/64348
2211 * lra-constraints.c (split_reg): Fix caller-save store/restore
2212 instruction generation.
2213
2214 2015-01-08 John David Anglin <danglin@gcc.gnu.org>
2215
2216 PR gcov-profile/61790
2217 * gcov-tool.c (do_rewrite): Use strtoll instead of atoll if host has
2218 long long. Fallback to int64_t if host doesn't have long long and
2219 use strtol if int64_t is long. Otherwise, use sscanf for conversion.
2220
2221 2015-01-08 Jakub Jelinek <jakub@redhat.com>
2222
2223 PR tree-optimization/63989
2224 * params.def (PARAM_MAX_TRACKED_STRLENS): Increment default
2225 from 1000 to 10000.
2226 * tree-ssa-strlen.c (get_strinfo): Moved earlier.
2227 (get_stridx): If we don't have a record for certain SSA_NAME,
2228 but it is POINTER_PLUS_EXPR of some SSA_NAME we do with
2229 constant offset, call get_stridx_plus_constant.
2230 (get_stridx_plus_constant): New function.
2231 (zero_length_string): Don't use get_stridx here.
2232
2233 PR target/55023
2234 PR middle-end/64388
2235 * dse.c (struct insn_info): Mention frame_read set also
2236 before reload for tail calls on some targets.
2237 (scan_insn): Revert 2014-12-22 change. Set frame_read
2238 also before reload for tail calls if
2239 HARD_FRAME_POINTER_IS_ARG_POINTER. Call add_wild_read
2240 instead of add_non_frame_wild_read for non-const/memset
2241 tail calls after reload.
2242
2243 2015-01-08 Jason Merrill <jason@redhat.com>
2244
2245 * ubsan.c (do_ubsan_in_current_function): New.
2246 (pass_ubsan::gate): Use it.
2247 * ubsan.h: Declare it.
2248 * convert.c (convert_to_integer): Use it.
2249
2250 2015-01-08 Jakub Jelinek <jakub@redhat.com>
2251
2252 PR target/64338
2253 * config/i386/i386.c (ix86_expand_int_movcc): Don't reverse
2254 compare_code when it is unconditionally overwritten afterwards.
2255 Use ix86_reverse_condition instead of reverse_condition. Don't
2256 change code if *reverse_condition* returned UNKNOWN and don't
2257 swap ct/cf and negate diff in that case.
2258
2259 2015-01-08 Mike Stump <mikestump@comcast.net>
2260
2261 * tsan.c (pass_tsan::gate): Add no_sanitize_thread support.
2262 (pass_tsan_O0::gate): Likewise.
2263 * extend.texi (Function Attributes): Add no_sanitize_thread
2264 documentation.
2265
2266 2015-01-08 Thomas Schwinge <thomas@codesourcery.com>
2267
2268 * builtins.def (DEF_GOMP_BUILTIN): Also consider flag_offload_abi
2269 for registering builtins.
2270 * config/i386/intelmic-mkoffload.c (prepare_target_image): Don't
2271 add -fopenmp to the argv_obstack used when invoking
2272 compile_for_target.
2273
2274 * config/i386/intelmic-mkoffload.c (compile_for_target): Always
2275 add "-m32" or "-m64" to argv_obstack.
2276 (generate_host_descr_file): Likewise, when invoking host_compiler.
2277 (main): Always add "-m elf_i386" or "-m elf_x86_64" when invoking
2278 ld.
2279
2280 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
2281
2282 * config/sh/sh-mem.cc: Use constant as second operand when emitting
2283 tstsi_t insns.
2284
2285 2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
2286
2287 PR target/55212
2288 * config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of
2289 constant load if constant operand fits into I08.
2290
2291 2015-01-08 Jakub Jelinek <jakub@redhat.com>
2292
2293 PR sanitizer/64336
2294 * tree.c (build2_stat): Fix up initialization of TREE_READONLY
2295 and TREE_THIS_VOLATILE for MEM_REFs.
2296 (build5_stat): Fix up initialization of TREE_READONLY and
2297 TREE_THIS_VOLATILE for TARGET_MEM_REFs.
2298
2299 2015-01-08 Kaz Kojima <kkojima@gcc.gnu.org>
2300
2301 PR target/64533
2302 * config/sh/sh.md (*addsi3_compact): Use u constraint instead
2303 of r for the second alternative of the destination operand.
2304
2305 2015-01-07 Segher Boessenkool <segher@kernel.crashing.org>
2306
2307 PR target/36557
2308 * config/rs6000/rs6000.md (*eqsi3_ext<mode>, *nesi3_ext<mode>): New.
2309
2310 2015-01-07 Sandra Loosemore <sandra@codesourcery.com>
2311
2312 * doc/invoke.texi ([-fvtable-verify]): Fix markup on option
2313 keywords.
2314 ([-fivar-visibility], [-fvisibility]): Likewise.
2315
2316 2015-01-07 Sandra Loosemore <sandra@codesourcery.com>
2317
2318 * doc/invoke.texi: Fix incorrect uses of @samp markup throughout
2319 the file where @code, @command, etc is more appropriate.
2320
2321 2015-01-06 Sandra Loosemore <sandra@codesourcery.com>
2322
2323 * doc/invoke.texi (RS/6000 and PowerPC Options): Tidy formatting
2324 of -mrecip= documentation.
2325
2326 2015-01-06 Michael Meissner <meissner@linux.vnet.ibm.com>
2327
2328 PR target/64505
2329 * config/rs6000/rs6000.c (rs6000_secondary_reload): Return the
2330 correct reload handler if -m32 -mpowerpc64 is used.
2331
2332 2015-01-06 Tom de Vries <tom@codesourcery.com>
2333
2334 * tree-ssa-tail-merge.c: Fix typo in struct same_succ_def comment.
2335
2336 2015-01-08 Christian Bruel <christian.bruel@st.com>
2337
2338 PR target/64507
2339 * config/sh/sh-mem.cc (sh_expand_cmpnstr): Check 0 length.
2340
2341 2015-01-06 Thomas Preud'homme <thomas.preudhomme@arm.com>
2342
2343 PR tree-optimization/63259
2344 * tree-ssa-math-opts.c (pass_optimize_bswap::execute): Stop checking
2345 if optab exists for 16bit byteswap.
2346
2347 2015-01-06 Jakub Jelinek <jakub@redhat.com>
2348
2349 * opts.c (common_handle_option): Add support for
2350 -fno-sanitize=all and -f{,no-}sanitize-recover=all.
2351 * doc/invoke.texi: Document -fno-sanitize=all,
2352 -f{,no-}sanitize-recover=all. Document that
2353 -fsanitize=float-cast-overflow is not enabled
2354 by -fsanitize=undefined. Fix up documentation
2355 of -f{,no-}sanitize-recover.
2356
2357 2015-01-06 Eric Botcazou <ebotcazou@adacore.com>
2358
2359 * config.gcc: Add Visium support.
2360 * configure.ac: Likewise.
2361 * configure: Regenerate.
2362 * doc/extend.texi (interrupt attribute): Add Visium.
2363 * doc/invoke.texi: Document Visium options.
2364 * doc/install.texi: Document Visium target.
2365 * doc/md.texi: Document Visium constraints.
2366 * common/config/visium: New directory.
2367 * config/visium: Likewise.
2368
2369 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org>
2370
2371 * simplify-rtx.c (simplify_binary_operation_1): Handle more cases
2372 for the "(and X (ior (not X) Y) -> (and X Y)" transform.
2373
2374 2015-01-05 Segher Boessenkool <segher@kernel.crashing.org>
2375
2376 * combine.c (combine_validate_cost): Do not count the cost of a
2377 split I2 twice. Do not display it twice in the dump, either.
2378
2379 2015-01-05 Sandra Loosemore <sandra@codesourcery.com>
2380
2381 Revert parts of r219199.
2382 * doc/invoke.texi ([-Wliteral-suffix]): Restore markup on
2383 <inttypes.h>.
2384 ([-Wtraditional]): Restore markup on <limits.h>.
2385
2386 2015-01-05 Trevor Saunders <tsaunders@mozilla.com>
2387
2388 PR c++/31397
2389 * doc/invoke.texi: Document -Wsuggest-override.
2390
2391 2015-01-05 Radovan Obradovic <radovan.obradovic@imgtec.com>
2392
2393 PR rtl-optimization/64287
2394 * toplev.c (HAVE_epilogue, HAVE_prologue): Provide default.
2395 (process_options): Disable flag_ipa_ra if profiling.
2396
2397 2015-01-05 Eric Botcazou <ebotcazou@adacore.com>
2398
2399 * config/nds32/nds32-peephole2.md: Do not mention define_peephole.
2400
2401 2015-01-05 Max Filippov <jcmvbkbc@gmail.com>
2402
2403 * config/xtensa/xtensa.c (hwloop_optimize, hwloop_fail,
2404 hwloop_pattern_reg, xtensa_doloop_hooks, xtensa_reorg_loops):
2405 put under #if TARGET_LOOPS guard.
2406
2407 2015-01-05 Uros Bizjak <ubizjak@gmail.com>
2408
2409 * config/i386/i386.c (output_387_binary_op): Use std::swap.
2410
2411 2015-01-05 Oleg Endo <olegendo@gcc.gnu.org>
2412
2413 * rtlanal.c (refers_to_regno_p): Change return value from int to bool.
2414 * rtl.h (refers_to_regno_p): Add overload.
2415 * cse.c: Use it.
2416 * bt-load.c: Likewise.
2417 * combine.c: Likewise.
2418 * df-scan.c: Likewise.
2419 * sched-deps.c: Likewise.
2420 * config/s390/s390.c: Likewise.
2421 * config/m32r/m32r.c: Likewise.
2422 * config/rs6000/spe.md: Likewise.
2423 * config/rs6000/rs6000.c: Likewise.
2424 * config/pa/pa.c: Likewise.
2425 * config/stormy16/stormy16.c: Likewise.
2426 * config/cris/cris.c: Likewise.
2427 * config/arc/arc.md: Likewise.
2428 * config/arc/arc.c: Likewise.
2429 * config/sh/sh.md: Likewise.
2430 * config/sh/sh.c: Likewise.
2431 * config/frv/frv.c: Likewise.
2432
2433 2015-01-05 Jakub Jelinek <jakub@redhat.com>
2434
2435 PR sanitizer/64265
2436 * gimplify.c (gimplify_function_tree): Add TSAN_FUNC_EXIT internal
2437 call as cleanup of the whole body.
2438 * internal-fn.def (TSAN_FUNC_EXIT): New internal call.
2439 * tsan.c (replace_func_exit): New function.
2440 (instrument_func_exit): Moved earlier.
2441 (instrument_memory_accesses): Adjust TSAN_FUNC_EXIT internal calls.
2442 Call instrument_func_exit if no TSAN_FUNC_EXIT internal calls have
2443 been found.
2444 (tsan_pass): Don't call instrument_func_exit.
2445 * internal-fn.c (expand_TSAN_FUNC_EXIT): New function.
2446 * tree-inline.c (copy_bb): Drop TSAN_FUNC_EXIT internal calls during
2447 inlining.
2448
2449 PR sanitizer/64344
2450 * ubsan.h (ubsan_instrument_float_cast): Add ARG argument.
2451 * ubsan.c (ubsan_instrument_float_cast): Add ARG argument, pass
2452 it to libubsan handler instead of EXPR. Fold comparisons earlier,
2453 if the result is integer_zerop, return NULL_TREE.
2454 * convert.c (convert_to_integer): Pass expr as ARG.
2455
2456 PR tree-optimization/64465
2457 * tree-inline.c (redirect_all_calls): During inlining
2458 clean up EH stmts and EH edges if redirect_call_stmt_to_callee
2459 changed the stmt to a non-throwing call.
2460
2461 2015-01-05 Sandra Loosemore <sandra@codesourcery.com>
2462
2463 * doc/invoke.texi: Fix incorrect uses of @code, @option, @samp,
2464 etc markup throughout the file.
2465
2466 2015-01-05 Bernd Edlinger <bernd.edlinger@hotmail.de>
2467
2468 Enable experimental TSAN support for Ada.
2469 * tsan.c (instrument_expr): Handle VIEW_CONVERT_EXPR.
2470
2471 2015-01-05 Jakub Jelinek <jakub@redhat.com>
2472
2473 PR tree-optimization/64494
2474 * tree-ssa-loop-im.c (move_computations_dom_walker::before_dom): Also
2475 clear SSA_NAME_ANTI_RANGE_P flag.
2476
2477 2015-01-05 Marek Polacek <polacek@redhat.com>
2478
2479 * doc/extend.texi (Arrays of Length Zero): Add missing comma.
2480
2481 2015-01-05 Jakub Jelinek <jakub@redhat.com>
2482
2483 Update copyright years.
2484
2485 * gcc.c (process_command): Update copyright notice dates.
2486 * gcov-dump.c: Ditto.
2487 * gcov.c: Ditto.
2488 * doc/cpp.texi: Bump @copying's copyright year.
2489 * doc/cppinternals.texi: Ditto.
2490 * doc/gcc.texi: Ditto.
2491 * doc/gccint.texi: Ditto.
2492 * doc/gcov.texi: Ditto.
2493 * doc/install.texi: Ditto.
2494 * doc/invoke.texi: Ditto.
2495
2496 * auto-profile.c, auto-profile.h: Fix up Copyright line.
2497
2498 2015-01-04 Sandra Loosemore <sandra@codesourcery.com>
2499
2500 * doc/invoke.texi ([-fsized-deallocation]): Copy-edit to fix
2501 verb tense, etc.
2502 ([-fvtable-verify], [-fvtv-debug]): Likewise.
2503 ([-Wabi]): Likewise.
2504 ([-fmessage-length]): Likewise.
2505 ([-Wsuggest-final-types], [-Wsuggest-final-methods]): Likewise.
2506 ([-Wno-discarded-qualifiers]): Likewise.
2507 ([-Wnodiscarded-array-qualifiers]): Likewise.
2508 ([-Wno-virtual-move-assign]): Likewise.
2509 ([-fsanitize=address], [-fsanitize=thread]): Likewise.
2510 ([-fsanitize=leak], [-fsanitize=undefined]): Likewise.
2511 ([-fsanitize=unreachable], [-fsanitize-recover]): Likewise.
2512 ([-fsanitize-undefined-trap-on-error]): Likewise.
2513 ([-floop-interchange]): Likewise.
2514 ([-ftree-coalesce-inlined-vars]): Likewise.
2515 ([-fvect-cost-model]): Likewise.
2516 ([-flto]): Likewise.
2517 ([--param]): Likewise.
2518 (Spec Files): Likewise.
2519 ([-mstrict-align]): Likewise.
2520 ([-mfix-cortex-a53-835769]): Likewise.
2521 ([-march], [-mtune]): Likewise.
2522 ([-mpic-register]): Likewise.
2523 ([-munaligned-access]): Likewise.
2524 ([-msp8]): Likewise.
2525 (EIND and Devices with more than 128 Ki Bytes of Flash): Likewise.
2526 (AVR Built-in Macros): Likewise.
2527 ([-mpreferred-stack-boundary]): Likewise.
2528 ([-mtune-crtl]): Likewise.
2529 ([-mashf]): Likewise.
2530 ([-mmcu=]): Likewise.
2531 ([-minrt]): Likewise.
2532 ([-maltivec], [-maltivec=be], [-maltivec=le]): Likewise.
2533 ([-mupper-regs]): Likewise.
2534 ([-matomic-model]): Likewise.
2535 ([-mdiv]): Likewise.
2536 ([-mzdcbranch]): Likewise.
2537 ([-mdisable-callt]): Likewise.
2538 ([-msoft-float]): Likewise.
2539 ([-m8byte-align]): Likewise.
2540 ([-fstack-reuse]): Likewise.
2541
2542 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
2543
2544 * doc/invoke.texi ([-fprofile-generate], [-fprofile-use]):
2545 Fix markup, light copy-editing.
2546 ([-fauto-profile]): Rewrite to fix formatting and content
2547 problems.
2548
2549 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
2550
2551 * doc/invoke.texi ([-fisolate-erroneous-paths-dereference]):
2552 Copy-edit description.
2553 ([-fisolate-erroneous-paths-attribute]): Likewise.
2554 * common.opt (fisolate-erroneous-paths-dereference):
2555 Copy-edit description.
2556 (fisolate-erroneous-paths-attribute): Likewise.
2557
2558 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
2559
2560 * doc/invoke.texi ([-fsemantic-interposition]): Fix typos and
2561 tidy grammar.
2562
2563 2015-01-03 Sandra Loosemore <sandra@codesourcery.com>
2564
2565 * doc/invoke.texi ([-fplan9-extensions]): Add/fix @opindex.
2566 ([-fvtv-debug]): Likewise.
2567 ([-Wc++-compat]): Likewise.
2568 ([-Wc++11-compat]): Likewise.
2569 ([-Wc++14-compat]): Likewise.
2570 ([-Wno-sized-deallocation]): Likewise.
2571 ([-femit-class-debug-always]): Likewise.
2572 ([-femit-struct-debug-detailed]): Likewise.
2573 ([-fno-keep-inline-dllexport]): Likewise.
2574 ([-fira-algorithm]): Likewise.
2575 ([-fira-region]): Likewise.
2576 ([-flra-remat]): Likewise.
2577 ([-fipa-ra]): Likewise.
2578 ([-fhoist-adjacent-loads]): Likewise.
2579 ([-fisolate-erroneous-paths-dereference]): Likewise.
2580 ([-fisolate-erroneous-paths-attribute]): Likewise.
2581 ([-ftree-switch-conversion]): Likewise.
2582 ([-ftree-tail-merge]): Likewise.
2583 ([-ftree-loop-if-convert]): Likewise.
2584 ([-ftree-loop-if-convert-stores]): Likewise.
2585 ([-ftree-loop-distribution]): Likewise.
2586 ([-ftree-loop-distribute-patterns]): Likewise.
2587 ([-flto-compression-level]): Likewise.
2588 ([-flto-report]): Likewise.
2589 ([-flto-report-wpa]): Likewise.
2590 ([-fuse-linker-plugin]): Likewise.
2591 ([-mfix-cortex-a53-835769]): Likewise.
2592 ([-mno-fix-cortex-a53-835769]): Likewise.
2593 ([-mmmx]...[-mno-3dnow]): Remove the -mno- forms from the
2594 explicit listing; add a note to the discussion indicating they
2595 exist. Reorder table to group similar options. Add missing
2596 @opindex entries. Add @need commands throughout the table to
2597 allow it to be split across multiple pages.
2598 ([-m8bit-idiv]): Fix @opindex.
2599 ([-mavx256-split-unaligned-load]): Likewise.
2600 ([-mavx256-split-unaligned-store]): Likewise.
2601 ([-mstack-protector-guard]): Likewise.
2602 ([-mcpu=]): Likewise.
2603 ([-mcpu]): Likewise.
2604 ([-mpointer-size=]): Likewise.
2605
2606 2015-01-03 John David Anglin <danglin@gcc.gnu.org>
2607
2608 * config/pa/pa.md (decrement_and_branch_until_zero): Use `Q' constraint
2609 instead of `m' constraint. Likewise for unnamed movb comparison
2610 patterns using reg_before_reload_operand predicate.
2611 * config/pa/predicates.md (reg_before_reload_operand): Tighten
2612 predicate to reject register index and LO_SUM DLT memory forms
2613 after reload.
2614
2615 2015-01-02 Sandra Loosemore <sandra@codesourcery.com>
2616
2617 * doc/invoke.texi (Option Summary): Fix spelling of
2618 -fdevirtualize-at-ltrans.
2619 ([-fdevirtualize]): Fix markup.
2620 ([-fdevirtualize-speculatively]): Fix typo.
2621 ([-fdevirtualize-at-ltrans]): Likewise. Make description less
2622 implementor-speaky.
2623 * common.opt (fdevirtualize-at-ltrans): Likewise.
2624 * ipa-devirt.c: Fix typos in comments throughout the file.
2625 (ipa_devirt): Fix typos in format strings for dump output.
2626
2627 2015-01-02 Sandra Loosemore <sandra@codesourcery.com>
2628
2629 * doc/invoke.texi ([-fopt-info]): Fix markup, consolidate
2630 discussion of defaults, light copy-editing.
2631
2632 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
2633
2634 * tsan.c (instrument_expr): corrected previous checkin.
2635
2636 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
2637
2638 Instrument bit field and unaligned accesses for TSAN.
2639 * sanitizer.def (BUILT_IN_TSAN_READ_RANGE): New built-in function.
2640 (BUILT_IN_TSAN_WRITE_RANGE): New built-in function.
2641 * tsan.c (instrument_expr): Handle COMPONENT_REF and BIT_FIELD_REF.
2642 Use BUILT_IN_TSAN_READ_RANGE and BUILT_IN_TSAN_WRITE_RANGE for
2643 unaligned memory regions.
2644
2645 2015-01-01 Anthony Green <green@moxielogic.com>
2646
2647 * config/moxie/predicates.md (moxie_general_movsrc_operand):
2648 Restrict move source register offsets to 16 bits.
2649 \f
2650 Copyright (C) 2015 Free Software Foundation, Inc.
2651
2652 Copying and distribution of this file, with or without modification,
2653 are permitted in any medium without royalty provided the copyright
2654 notice and this notice are preserved.