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