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