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