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