f28cf448312aff96692af03a95900e748c80123f
[gcc.git] / gcc / ChangeLog
1 2016-01-11 Martin Jambor <mjambor@suse.cz>
2
3 PR ipa/69044
4 * ipa-cp.c (estimate_local_effects): Do not clone for removal of
5 useless parameters if we cannot change function signature.
6
7 2016-01-11 Martin Jambor <mjambor@suse.cz>
8
9 PR ipa/66616
10 * cgraphclones.c (duplicate_thunk_for_node): Copy can_change_signature
11 flag.
12
13 2016-01-11 Tom de Vries <tom@codesourcery.com>
14
15 PR tree-optimization/69109
16 * tree-parloops.c (try_transform_to_exit_first_loop_alt): Don't allow
17 latch with phi.
18
19 2016-01-11 Tom de Vries <tom@codesourcery.com>
20
21 PR tree-optimization/69108
22 * tree-parloops.c (gather_scalar_reductions): Handle case that outer phi
23 res is not used in a phi.
24
25 2016-01-11 Yury Gribov <y.gribov@samsung.com>
26
27 PR 67425
28 * common.opt (frandom-seed): Fix parameter name.
29 * doc/invoke.texi (frandom-seed): Ditto and describe parameter.
30
31 2016-01-11 Tom de Vries <tom@codesourcery.com>
32
33 PR tree-optimization/69058
34 * tree-parloops.c (pass_parallelize_loops::execute): Return 0 if libgomp
35 not supported.
36
37 2016-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
38
39 * config/arc/arc.opt (mdiv-rem): Add period to the end.
40 (mcode-density): Likewise.
41
42 2016-01-10 Tom de Vries <tom@codesourcery.com>
43
44 PR tree-optimization/69062
45 * tree-parloops.c (loop_has_phi_with_address_arg): New function.
46 (parallelize_loops): Don't paralelize loop that has phi with address
47 arg.
48
49 2016-01-10 Tom de Vries <tom@codesourcery.com>
50
51 PR tree-optimization/69039
52 * tree-parloops.c (try_create_reduction_list): Only allow single exit
53 phi for reduction.
54
55 2016-01-09 John David Anglin <danglin@gcc.gnu.org>
56
57 PR middle-end/68743
58 * match.pd: Require target has function_c99_misc before doing
59 truncl(extend(x)) and trunc(extend(x)) -> extend(truncf(x)), etc.
60
61 2016-01-09 Gerald Pfeifer <gerald@pfeifer.com>
62
63 * configure.ac (isl_options_set_schedule_serialize_sccs): Also
64 use GMPINC.
65 * configure: Regenerate.
66
67 2016-01-09 Jakub Jelinek <jakub@redhat.com>
68
69 PR middle-end/50865
70 PR tree-optimization/69097
71 * fold-const.h (expr_not_equal_to): New prototype.
72 * fold-const.c: Include stringpool.h and tree-ssanames.h.
73 (expr_not_equal_to): New function.
74 * match.pd (X % -Y is the same as X % Y): Don't optimize
75 unless X is known not to be equal to minimum or Y is known
76 not to be equal to -1.
77 * tree-vrp.c (simplify_div_or_mod_using_ranges): Add GSI argument.
78 fold TRUNC_MOD_EXPR if the second argument is not a power of two.
79 (simplify_stmt_using_ranges): Adjust caller.
80 (vrp_finalize): Call set_value_range on SSA_NAMEs before calling
81 substitute_and_fold.
82
83 2016-01-09 Jan Hubicka <hubicka@ucw.cz>
84
85 * ipa-icf.c (sem_item_optimizer::merge_classes): Do not ICE on VAR_DECL
86 w/o DECL_NAME.
87
88 2016-01-08 Jakub Jelinek <jakub@redhat.com>
89
90 PR tree-optimization/69167
91 * gimple-fold.c (replace_stmt_with_simplification): Also punt if
92 new SSA_NAME_OCCURS_IN_ABNORMAL_PHI SSA_NAMEs appear in operands of
93 ops[0] comparison.
94 * gimple-match-head.c (maybe_push_res_to_seq): Likewise.
95
96 2016-01-08 Alan Lawrence <alan.lawrence@arm.com>
97 Richard Biener <rguenther@suse.de>
98
99 PR tree-optimization/68707
100 * tree-vect-slp.c (vect_analyze_slp_instance): Cancel permuted SLP
101 instances that can be handled via vect_load_lanes.
102
103 2016-01-08 Uros Bizjak <ubizjak@gmail.com>
104
105 * symtab.c (symtab_node::equal_address_to): Return -1 instead of 2
106 if we can't determine address equivalence.
107 * alias.c (compare_base_decl): Update for changed return value of
108 symtab_node::equal_address_to.
109
110 2016-01-08 Jason Merrill <jason@redhat.com>
111
112 PR c++/68983
113 PR c++/67557
114 * function.c (assign_temp): Guard against TREE_ADDRESSABLE types here.
115 * expr.c (store_field): Not here.
116 * tree-cfgcleanup.c (fixup_noreturn_call): Don't clear LHS of a
117 call with TREE_ADDRESSABLE type.
118 * tree-cfg.c (verify_gimple_call): Adjust.
119
120 2016-01-08 Olivier Hainque <hainque@adacore.com>
121
122 * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
123 libc_internal.
124
125 2016-01-08 Alan Lawrence <alan.lawrence@arm.com>
126
127 * gcc.target/rs6000/paired.md (reduc_smax_v2sf): Rename to...
128 (reduc_smax_scal_v2sf): ...here, make result SFmode, extract element.
129 (reduc_smin_v2sf): Rename to...
130 (reduc_smin_scal_v2sf): ...here, make result SFmode, extract element.
131 (reduc_splus_v2sf): Rename to...
132 (reduc_plus_scal_v2sf): ...here, make result SFmode, extract element.
133
134 2016-01-08 Jakub Jelinek <jakub@redhat.com>
135
136 PR tree-optimization/69162
137 * gimplify.c (gimplify_va_arg_expr): Encode original type of
138 valist argument in another argument.
139 (gimplify_modify_expr): Adjust for the above change. Cleanup.
140 * tree-stdarg.c (expand_ifn_va_arg_1): Use new 3rd argument
141 to determine the va_list type, build a MEM_REF instead of
142 build_fold_indirect_ref.
143
144 PR tree-optimization/69172
145 * gimple-fold.c (gimple_fold_builtin_memory_chk): Pass type to
146 gimple_build.
147
148 2016-01-08 Thomas Preud'homme <thomas.preudhomme@arm.com>
149
150 PR tree-optimization/67781
151 * tree-ssa-math-opts.c (find_bswap_or_nop): Zero out bytes in cmpxchg
152 and cmpnop in two steps: first the ones not accessed in original
153 gimple expression in a endian independent way and then the ones not
154 accessed in the final result in an endian-specific way.
155
156 2016-01-08 Jakub Jelinek <jakub@redhat.com>
157
158 PR tree-optimization/69083
159 * tree-vect-slp.c (vect_get_constant_vectors): For
160 VECTOR_BOOLEAN_TYPE_P assert op is fold_convertible_p to vector_type's
161 element type. If op is fold_convertible_p to vector_type's element
162 type, use NOP_EXPR instead of VCE.
163
164 2016-01-08 Segher Boessenkool <segher@kernel.crashing.org>
165
166 PR rtl-optimization/67778
167 PR rtl-optimization/68634
168 PR rtl-optimization/68909
169 * shrink-wrap.c (try_shrink_wrapping): Add comment. Don't pop
170 block from the stack until done with it. Remove a superfluous
171 bitmap set. Remove a superfluous bitmap test.
172
173 2016-01-07 Martin Sebor <msebor@redhat.com>
174
175 PR c/68966
176 * doc/extend.texi (__atomic Builtins, __sync Builtins): Document
177 constraint on the type of arguments.
178
179 2016-01-07 Andreas Tobler <andreast@gcc.gnu.org>
180
181 * config/arm/freebsd.h: Rename SUBTARGET_OVERRIDE_OPTIONS to
182 SUBTARGET_OVERRIDE_INTERNAL_OPTIONS. Adjust to check
183 unaligned_access on the gcc_options set.
184 * config/arm/arm.c (arm_option_override_internal): Use
185 SUBTARGET_OVERRIDE_INTERNAL_OPTIONS.
186
187 2016-01-07 Uros Bizjak <ubizjak@gmail.com>
188
189 PR target/69140
190 * config/i386/i386.c (ix86_frame_pointer_required): Enable
191 frame pointer for TARGET_64BIT_MS_ABI when stack is misaligned.
192
193 2016-01-07 Uros Bizjak <ubizjak@gmail.com>
194
195 Revert
196 2016-01-06 Uros Bizjak <ubizjak@gmail.com>
197
198 PR target/69140
199 * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
200 depending on frame_pointer_needed before remaining integer and SSE
201 registers are saved.
202
203 2016-01-07 Sandra Loosemore <sandra@codesourcery.com>
204
205 PR 1078
206 * doc/extend.texi (Nvidia PDX Function Attributes): New section.
207
208 2016-01-07 H.J. Lu <hongjiu.lu@intel.com>
209
210 PR target/69171
211 * config/i386/sse.md (<sse>_sqrt<mode>2<mask_name><round_name>):
212 Use the "xBm" constraint.
213 (float<sseintvecmodelower><mode>2<mask_name><round_name):
214 Likewise.
215 (sse_cvtsi2ss<round_name>): Use round_nimm_scalar_predicate.
216 (sse_cvtsi2ssq<round_name>): Likewise.
217 (sse_cvtss2si<round_name>): Likewise.
218 (sse_cvtss2siq<round_name>): Likewise.
219 (sse2_cvtsi2sdq<round_name>): Likewise.
220 (sse2_cvtsd2si<round_name>): Likewise.
221 (sse2_cvtsd2siq<round_name>): Likewise.
222 * config/i386/subst.md (round_nimm_scalar_predicate): New
223 predicate.
224
225 2015-12-15 Bernd Schmidt <bschmidt@redhat.com>
226
227 PR middle-end/67639
228 * varasm.c (make_decl_rtl): Mark invalid register vars as
229 DECL_EXTERNAL.
230
231 PR rtl-optimization/66206
232 * bt-load.c (find_btr_use): Change first arg to be a pointer to an rtx.
233 All callers changed.
234
235 2016-01-07 Jakub Jelinek <jakub@redhat.com>
236
237 PR tree-optimization/69141
238 * tree-ssa-pre.c: Include langhooks.h.
239 (eliminate_dom_walker::before_dom_children): Use
240 lang_hooks.decl_printable_name instead of
241 cgraph_node::get ()->name ().
242
243 PR middle-end/68960
244 * gimple-expr.c (copy_var_decl): If var has DECL_USER_ALIGN set, copy
245 it and DECL_ALIGN too.
246
247 2016-01-06 Robert Suchanek <robert.suchanek@imgtec.com>
248
249 * config/mips/mips-ftypes.def: Sort to lexicographical order.
250
251 2016-01-06 Uros Bizjak <ubizjak@gmail.com>
252
253 PR target/69140
254 * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
255 depending on frame_pointer_needed before remaining integer and SSE
256 registers are saved.
257
258 2015-01-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
259
260 * config/rs6000/vsx.md (*p9_vecload_<mode>): Replace VSX_M
261 mode iterator with VSX_M2.
262 (*p9_vecstore_<mode>): Likewise.
263 (*vsx_le_permute_<mode>): Restrict to !TARGET_P9_VECTOR.
264 (*vsx_le_perm_load_<mode> for VSX_LE_128): Likewise.
265 (*vsx_le_perm_store_<mode> for VSX_LE_128): Likewise.
266 (define_split for VSX_LE128 stores): Likewise.
267 (define_peephole2 for TImode LE swaps): Likewise.
268 (define_split for VSX_LE128 post-reload stores): Likewise.
269
270 2016-01-06 Marek Polacek <polacek@redhat.com>
271
272 PR sanitizer/69099
273 * convert.c (convert_to_integer_1): Adjust call to
274 ubsan_instrument_float_cast. Use NULL_TREE instead of NULL.
275 * ubsan.c (ubsan_instrument_float_cast): Drop the ARG parameter. Use
276 EXPR instead of ARG.
277 * ubsan.h (ubsan_instrument_float_cast): Adjust declaration.
278
279 2016-01-05 Sandra Loosemore <sandra@codesourcery.com>
280
281 PR 1078
282 * doc/extend.texi (RL78 Variable Attributes): New section.
283
284 2016-01-05 Marek Polacek <polacek@redhat.com>
285
286 PR c/69104
287 * builtins.c (get_memmodel): Use expansion point location rather than
288 the input location. Call warning_at rather than warning.
289 (expand_builtin_atomic_compare_exchange): Likewise.
290 (expand_builtin_atomic_load): Likewise.
291 (expand_builtin_atomic_store): Likewise.
292 (expand_builtin_atomic_clear): Likewise.
293
294 2016-01-05 H.J. Lu <hongjiu.lu@intel.com>
295
296 PR target/68991
297 * config/i386/i386.c (ix86_expand_vector_logical_operator):
298 Replace nonimmediate_operand with vector_operand.
299 * config/i386/predicates.md (vector_operand): New predicate.
300 (general_vector_operand): Replace nonimmediate_operand with
301 vector_operand.
302 * config/i386/sse.md: Replace nonimmediate_operand with
303 vector_operand and m constraint with Bm constraint on SSE
304 patterns with 16-byte memory operand.
305 * config/i386/subst.md (round_nimm_predicate): Replace
306 nonimmediate_operand with vector_operand.
307 (round_saeonly_nimm_predicate): Likewise.
308 (round_saeonly_nimm_scalar_predicate): New.
309
310 2016-01-05 H.J. Lu <hongjiu.lu@intel.com>
311
312 PR target/68991
313 * config/i386/constraints.md (Bm): New constraint.
314 * config/i386/predicates.md (vector_memory_operand): New
315 predicate.
316 * config/i386/sse.md: Replace xm with xBm in plusminus and
317 any_logic patterns.
318
319 2016-01-05 Sandra Loosemore <sandra@codesourcery.com>
320
321 PR 1078
322 * doc/extend.texi (V850 Function Attributes): New section.
323 (V850 Variable Attributes): New section.
324
325 2016-01-05 Sandra Loosemore <sandra@codesourcery.com>
326
327 PR 1078
328 * doc/extend.texi (MicroBlaze Function Attributes): Document
329 interrupt_handler and fast_interrupt attributes.
330
331 2016-01-05 Sergei Trofimovich <siarheit@google.com>
332
333 PR other/60465
334 * config/ia64/ia64.c (ia64_expand_load_address): Use gprel64
335 for local symbolic operands.
336 * config/ia64/predicates.md (local_symbolic_operand64): New
337 predicate.
338
339 2016-01-05 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
340
341 PR rtl-optimization/68651
342 * combine.c (combine_simplify_rtx): Canonicalize x + x into
343 x << 1.
344
345 2016-01-05 Nathan Sidwell <nathan@acm.org>
346
347 * alias.c (compare_base_decls): Use symtab_node::get.
348
349 2016-01-05 Nick Clifton <nickc@redhat.com>
350
351 PR target/68770
352 * ira-costs.c (copy_cost): Initialise the t_icode field of the
353 secondary_reload_info structure.
354
355 PR target/66655
356 * config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Define to use weak
357 decls if weak support is available.
358
359 2016-01-04 Martin Sebor <msebor@redhat.com>
360
361 * doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.
362
363 2016-01-04 Michael Meissner <meissner@linux.vnet.ibm.com>
364
365 * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add
366 OPTION_MASK_P9_DFORM.
367
368 * config/rs6000/constraints.md (wo constraint): New constraint for
369 ISA 3.0 (power9).
370
371 * config/rs6000/rs6000.c (rs6000_debug_reg_global): Add support
372 for wo constraint.
373 (rs6000_init_hard_regno_mode_ok): Likewise.
374
375 * config/rs6000/rs6000.h (r6000_reg_class_enum): Add support for
376 wo constraint.
377
378 * config/rs6000/altivec.md (altivec_vperm_<mode>): Clean up vperm
379 expanders not to have constraints. Add support for ISA 3.0 xxperm
380 instruction. Add support for fusing xxlor with xxperm.
381 (altivec_vperm_<mode>_internal): Likewise.
382 (altivec_vperm_v8hiv16qi): Likewise.
383 (altivec_vperm_<mode>v16q): Likewise.
384 (altivec_vperm_<mode>_uns): Likewise.
385 (vperm_v8hiv4si): Likewise.
386 (vperm_v16qiv8hi): Likewise.
387
388 * doc/md.texi (RS/6000 constraints): Document wo constraint.
389
390 2016-01-04 Jakub Jelinek <jakub@redhat.com>
391
392 Update copyright years.
393
394 * gcc.c (process_command): Update copyright notice dates.
395 * gcov-dump.c (print_version): Ditto.
396 * gcov.c (print_version): Ditto.
397 * gcov-tool.c (print_version): Ditto.
398 * gengtype.c (create_file): Ditto.
399 * doc/cpp.texi: Bump @copying's copyright year.
400 * doc/cppinternals.texi: Ditto.
401 * doc/gcc.texi: Ditto.
402 * doc/gccint.texi: Ditto.
403 * doc/gcov.texi: Ditto.
404 * doc/install.texi: Ditto.
405 * doc/invoke.texi: Ditto.
406
407 2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
408
409 * config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer
410 modes larger than TImode as TImode if NEON is not enabled.
411
412 2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
413
414 PR target/69100
415 * config/sparc/sparc.h (FUNCTION_ARG_REGNO_P): Return true in 64-bit
416 mode for %f0-%f31 only if TARGET_FPU.
417
418 2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
419
420 PR target/69072
421 * config/sparc/sparc.c (scan_record_type): Take into account subfields
422 to compute the PACKED_P predicate.
423 (function_arg_record_value): Minor tweaks.
424
425 2016-01-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
426
427 * doc/install.texi (--with-multilib-list): Describe the meaning of the
428 option for arm*-*-* targets.
429
430 2016-01-03 Sandra Loosemore <sandra@codesourcery.com>
431
432 * doc/extend.texi (Common Function Attributes): Move docs for
433 MSP430-specific attributes to....
434 (MSP430 Function Attributes): ...here. Delete the redundant
435 entries and copy-edit the remaining text.
436 (MSP430 Variable Attributes): Use uniform format for index
437 entries and add a cross-reference to the corresponding function
438 attribute docs.
439
440 2016-01-03 Vladimír Čunát <vcunat@gmail.com>
441
442 * doc/invoke.texi (RS/6000 and PowerPC Options): Fix
443 -finite-math typo.
444 (x86 Options): Likewise.
445
446 2016-01-01 Sandra Loosemore <sandra@codesourcery.com>
447
448 PR 1078
449
450 * extend.texi (Common Function Attributes) <no_stack_limit>: New.
451 * invoke.texi (Code Gen Options) <-fno-stack-limit>: Add pointer
452 to corresponding attribute.
453
454 2016-01-01 Sandra Loosemore <sandra@codesourcery.com>
455
456 * doc/extend.texi (Common Function Attributes) <noplt>: Move
457 to correct alphabetization of table. Copy-edit and correct
458 markup.
459 <stack_protect>: Likewise.
460 <target_clones>: Likewise.
461 <simd>: Likewise.
462 * doc/invoke.texi (Optimize Options) <-fstack-protector-explicit>:
463 Correct punctuation.
464 (Code Gen Options) <-fno-plt>: Copy-edit.
465
466 2016-01-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
467
468 PR target/68917
469 * config/tilegx/tilegx.md (clzsi2): Don't create DI subregs of
470 SI values. Explicitly convert SI to DI and vice-versa.
471
472 2016-01-01 Jakub Jelinek <jakub@redhat.com>
473
474 PR tree-optimization/69070
475 * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Only test
476 REAL_VALUE_ISSIGNALING_NAN on arg0 if arg0 is a REAL_CST.
477
478 PR sanitizer/69055
479 * ubsan.c (ubsan_instrument_float_cast): Call
480 initialize_sanitizer_builtins.
481
482 PR target/69015
483 * ifcvt.c (find_cond_trap): Give up if returnjump_p (jump).
484 \f
485 Copyright (C) 2016 Free Software Foundation, Inc.
486
487 Copying and distribution of this file, with or without modification,
488 are permitted in any medium without royalty provided the copyright
489 notice and this notice are preserved.