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