1 2016-01-11 H.J. Lu <hongjiu.lu@intel.com>
3 * config/i386/sse.md (<avx512>_load<mode>_mask): Remove
5 (<avx512>_store<mode>_mask): Likewise.
7 2016-01-11 Bernd Schmidt <bschmidt@redhat.com>
8 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
10 PR rtl-optimization/68841
11 * ifcvt.c (struct noce_if_info): Add orig_x field.
12 (bbs_ok_for_cmove_arith): Add to_rename parameter.
13 Don't record conflicts on to_rename if it's present.
14 Allow memory destinations in sets.
15 (noce_try_cmove_arith): Call bbs_ok_for_cmove_arith even on simple
16 blocks, passing orig_x to the checks.
17 (noce_process_if_block): Set if_info->orig_x appropriately.
19 2016-01-11 Tom de Vries <tom@codesourcery.com>
21 PR tree-optimization/69069
22 * tree-parloops.c (create_parallel_loop): Add missing phi args.
24 2016-01-11 Yuri Rumyantsev <ysrumyan@gmail.com>
26 PR rtl-optimization/68920
27 * config/i386/i386.c (ix86_option_override_internal): Restrict number
28 of conditional moves for RTL if-conversion to 1 for
29 TARGET_ONE_IF_CONV_INSN.
30 * config/i386/i386.h (TARGET_ONE_IF_CONV_INSN): New macros.
31 * config/i386/x86-tune.def (X86_TUNE_ONE_IF_CONV_INSN): New macros.
32 * params.def (PARAM_MAX_RTL_IF_CONVERSION_INSNS) : Introduce new
33 parameter to restirct number of conditional moves for
35 * doc/invoke.texi (max-rtl-if-conversion-insns): Document it.
36 * ifcvt.c (bb_ok_for_noce_convert_multiple_sets): Limit number of
39 2016-01-11 Alexandre Oliva <aoliva@redhat.com>
42 * var-tracking.c (drop_overlapping_mem_locs): Operate on all
43 onepart vars. Fix typo in comment. Fix reversed condition in
45 (dataflow_set_remove_mem_locs): Operate on all onepart vars.
48 * var-tracking.c (dump_onepart_variable_differences): New.
49 (dataflow_set_different): If a detailed dump is requested,
50 delay early returns and dump differences between onepart
51 variables present before and after, and added variables.
53 2016-01-11 Ilya Enkovich <enkovich.gnu@gmail.com>
56 * expr.c (expand_expr_real_1): For boolean vector constants
57 with a scalar mode use const_scalar_mask_from_tree.
58 (const_scalar_mask_from_tree): New.
59 * optabs.c (expand_vec_cond_mask_expr): Use mask mode
60 assigned to a mask type to handle constants.
62 2016-01-11 Martin Jambor <mjambor@suse.cz>
65 * ipa-cp.c (estimate_local_effects): Do not clone for removal of
66 useless parameters if we cannot change function signature.
68 2016-01-11 Martin Jambor <mjambor@suse.cz>
71 * cgraphclones.c (duplicate_thunk_for_node): Copy can_change_signature
74 2016-01-11 Tom de Vries <tom@codesourcery.com>
76 PR tree-optimization/69109
77 * tree-parloops.c (try_transform_to_exit_first_loop_alt): Don't allow
80 2016-01-11 Tom de Vries <tom@codesourcery.com>
82 PR tree-optimization/69108
83 * tree-parloops.c (gather_scalar_reductions): Handle case that outer phi
84 res is not used in a phi.
86 2016-01-11 Yury Gribov <y.gribov@samsung.com>
89 * common.opt (frandom-seed): Fix parameter name.
90 * doc/invoke.texi (frandom-seed): Ditto and describe parameter.
92 2016-01-11 Tom de Vries <tom@codesourcery.com>
94 PR tree-optimization/69058
95 * tree-parloops.c (pass_parallelize_loops::execute): Return 0 if libgomp
98 2016-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
100 * config/arc/arc.opt (mdiv-rem): Add period to the end.
101 (mcode-density): Likewise.
103 2016-01-10 Tom de Vries <tom@codesourcery.com>
105 PR tree-optimization/69062
106 * tree-parloops.c (loop_has_phi_with_address_arg): New function.
107 (parallelize_loops): Don't paralelize loop that has phi with address
110 2016-01-10 Tom de Vries <tom@codesourcery.com>
112 PR tree-optimization/69039
113 * tree-parloops.c (try_create_reduction_list): Only allow single exit
116 2016-01-09 John David Anglin <danglin@gcc.gnu.org>
119 * match.pd: Require target has function_c99_misc before doing
120 truncl(extend(x)) and trunc(extend(x)) -> extend(truncf(x)), etc.
122 2016-01-09 Gerald Pfeifer <gerald@pfeifer.com>
124 * configure.ac (isl_options_set_schedule_serialize_sccs): Also
126 * configure: Regenerate.
128 2016-01-09 Jakub Jelinek <jakub@redhat.com>
131 PR tree-optimization/69097
132 * fold-const.h (expr_not_equal_to): New prototype.
133 * fold-const.c: Include stringpool.h and tree-ssanames.h.
134 (expr_not_equal_to): New function.
135 * match.pd (X % -Y is the same as X % Y): Don't optimize
136 unless X is known not to be equal to minimum or Y is known
137 not to be equal to -1.
138 * tree-vrp.c (simplify_div_or_mod_using_ranges): Add GSI argument.
139 fold TRUNC_MOD_EXPR if the second argument is not a power of two.
140 (simplify_stmt_using_ranges): Adjust caller.
141 (vrp_finalize): Call set_value_range on SSA_NAMEs before calling
144 2016-01-09 Jan Hubicka <hubicka@ucw.cz>
146 * ipa-icf.c (sem_item_optimizer::merge_classes): Do not ICE on VAR_DECL
149 2016-01-08 Jakub Jelinek <jakub@redhat.com>
151 PR tree-optimization/69167
152 * gimple-fold.c (replace_stmt_with_simplification): Also punt if
153 new SSA_NAME_OCCURS_IN_ABNORMAL_PHI SSA_NAMEs appear in operands of
155 * gimple-match-head.c (maybe_push_res_to_seq): Likewise.
157 2016-01-08 Alan Lawrence <alan.lawrence@arm.com>
158 Richard Biener <rguenther@suse.de>
160 PR tree-optimization/68707
161 * tree-vect-slp.c (vect_analyze_slp_instance): Cancel permuted SLP
162 instances that can be handled via vect_load_lanes.
164 2016-01-08 Uros Bizjak <ubizjak@gmail.com>
166 * symtab.c (symtab_node::equal_address_to): Return -1 instead of 2
167 if we can't determine address equivalence.
168 * alias.c (compare_base_decl): Update for changed return value of
169 symtab_node::equal_address_to.
171 2016-01-08 Jason Merrill <jason@redhat.com>
175 * function.c (assign_temp): Guard against TREE_ADDRESSABLE types here.
176 * expr.c (store_field): Not here.
177 * tree-cfgcleanup.c (fixup_noreturn_call): Don't clear LHS of a
178 call with TREE_ADDRESSABLE type.
179 * tree-cfg.c (verify_gimple_call): Adjust.
181 2016-01-08 Olivier Hainque <hainque@adacore.com>
183 * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
186 2016-01-08 Alan Lawrence <alan.lawrence@arm.com>
188 * gcc.target/rs6000/paired.md (reduc_smax_v2sf): Rename to...
189 (reduc_smax_scal_v2sf): ...here, make result SFmode, extract element.
190 (reduc_smin_v2sf): Rename to...
191 (reduc_smin_scal_v2sf): ...here, make result SFmode, extract element.
192 (reduc_splus_v2sf): Rename to...
193 (reduc_plus_scal_v2sf): ...here, make result SFmode, extract element.
195 2016-01-08 Jakub Jelinek <jakub@redhat.com>
197 PR tree-optimization/69162
198 * gimplify.c (gimplify_va_arg_expr): Encode original type of
199 valist argument in another argument.
200 (gimplify_modify_expr): Adjust for the above change. Cleanup.
201 * tree-stdarg.c (expand_ifn_va_arg_1): Use new 3rd argument
202 to determine the va_list type, build a MEM_REF instead of
203 build_fold_indirect_ref.
205 PR tree-optimization/69172
206 * gimple-fold.c (gimple_fold_builtin_memory_chk): Pass type to
209 2016-01-08 Thomas Preud'homme <thomas.preudhomme@arm.com>
211 PR tree-optimization/67781
212 * tree-ssa-math-opts.c (find_bswap_or_nop): Zero out bytes in cmpxchg
213 and cmpnop in two steps: first the ones not accessed in original
214 gimple expression in a endian independent way and then the ones not
215 accessed in the final result in an endian-specific way.
217 2016-01-08 Jakub Jelinek <jakub@redhat.com>
219 PR tree-optimization/69083
220 * tree-vect-slp.c (vect_get_constant_vectors): For
221 VECTOR_BOOLEAN_TYPE_P assert op is fold_convertible_p to vector_type's
222 element type. If op is fold_convertible_p to vector_type's element
223 type, use NOP_EXPR instead of VCE.
225 2016-01-08 Segher Boessenkool <segher@kernel.crashing.org>
227 PR rtl-optimization/67778
228 PR rtl-optimization/68634
229 PR rtl-optimization/68909
230 * shrink-wrap.c (try_shrink_wrapping): Add comment. Don't pop
231 block from the stack until done with it. Remove a superfluous
232 bitmap set. Remove a superfluous bitmap test.
234 2016-01-07 Martin Sebor <msebor@redhat.com>
237 * doc/extend.texi (__atomic Builtins, __sync Builtins): Document
238 constraint on the type of arguments.
240 2016-01-07 Andreas Tobler <andreast@gcc.gnu.org>
242 * config/arm/freebsd.h: Rename SUBTARGET_OVERRIDE_OPTIONS to
243 SUBTARGET_OVERRIDE_INTERNAL_OPTIONS. Adjust to check
244 unaligned_access on the gcc_options set.
245 * config/arm/arm.c (arm_option_override_internal): Use
246 SUBTARGET_OVERRIDE_INTERNAL_OPTIONS.
248 2016-01-07 Uros Bizjak <ubizjak@gmail.com>
251 * config/i386/i386.c (ix86_frame_pointer_required): Enable
252 frame pointer for TARGET_64BIT_MS_ABI when stack is misaligned.
254 2016-01-07 Uros Bizjak <ubizjak@gmail.com>
257 2016-01-06 Uros Bizjak <ubizjak@gmail.com>
260 * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
261 depending on frame_pointer_needed before remaining integer and SSE
264 2016-01-07 Sandra Loosemore <sandra@codesourcery.com>
267 * doc/extend.texi (Nvidia PDX Function Attributes): New section.
269 2016-01-07 H.J. Lu <hongjiu.lu@intel.com>
272 * config/i386/sse.md (<sse>_sqrt<mode>2<mask_name><round_name>):
273 Use the "xBm" constraint.
274 (float<sseintvecmodelower><mode>2<mask_name><round_name):
276 (sse_cvtsi2ss<round_name>): Use round_nimm_scalar_predicate.
277 (sse_cvtsi2ssq<round_name>): Likewise.
278 (sse_cvtss2si<round_name>): Likewise.
279 (sse_cvtss2siq<round_name>): Likewise.
280 (sse2_cvtsi2sdq<round_name>): Likewise.
281 (sse2_cvtsd2si<round_name>): Likewise.
282 (sse2_cvtsd2siq<round_name>): Likewise.
283 * config/i386/subst.md (round_nimm_scalar_predicate): New
286 2015-12-15 Bernd Schmidt <bschmidt@redhat.com>
289 * varasm.c (make_decl_rtl): Mark invalid register vars as
292 PR rtl-optimization/66206
293 * bt-load.c (find_btr_use): Change first arg to be a pointer to an rtx.
296 2016-01-07 Jakub Jelinek <jakub@redhat.com>
298 PR tree-optimization/69141
299 * tree-ssa-pre.c: Include langhooks.h.
300 (eliminate_dom_walker::before_dom_children): Use
301 lang_hooks.decl_printable_name instead of
302 cgraph_node::get ()->name ().
305 * gimple-expr.c (copy_var_decl): If var has DECL_USER_ALIGN set, copy
306 it and DECL_ALIGN too.
308 2016-01-06 Robert Suchanek <robert.suchanek@imgtec.com>
310 * config/mips/mips-ftypes.def: Sort to lexicographical order.
312 2016-01-06 Uros Bizjak <ubizjak@gmail.com>
315 * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
316 depending on frame_pointer_needed before remaining integer and SSE
319 2015-01-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
321 * config/rs6000/vsx.md (*p9_vecload_<mode>): Replace VSX_M
322 mode iterator with VSX_M2.
323 (*p9_vecstore_<mode>): Likewise.
324 (*vsx_le_permute_<mode>): Restrict to !TARGET_P9_VECTOR.
325 (*vsx_le_perm_load_<mode> for VSX_LE_128): Likewise.
326 (*vsx_le_perm_store_<mode> for VSX_LE_128): Likewise.
327 (define_split for VSX_LE128 stores): Likewise.
328 (define_peephole2 for TImode LE swaps): Likewise.
329 (define_split for VSX_LE128 post-reload stores): Likewise.
331 2016-01-06 Marek Polacek <polacek@redhat.com>
334 * convert.c (convert_to_integer_1): Adjust call to
335 ubsan_instrument_float_cast. Use NULL_TREE instead of NULL.
336 * ubsan.c (ubsan_instrument_float_cast): Drop the ARG parameter. Use
338 * ubsan.h (ubsan_instrument_float_cast): Adjust declaration.
340 2016-01-05 Sandra Loosemore <sandra@codesourcery.com>
343 * doc/extend.texi (RL78 Variable Attributes): New section.
345 2016-01-05 Marek Polacek <polacek@redhat.com>
348 * builtins.c (get_memmodel): Use expansion point location rather than
349 the input location. Call warning_at rather than warning.
350 (expand_builtin_atomic_compare_exchange): Likewise.
351 (expand_builtin_atomic_load): Likewise.
352 (expand_builtin_atomic_store): Likewise.
353 (expand_builtin_atomic_clear): Likewise.
355 2016-01-05 H.J. Lu <hongjiu.lu@intel.com>
358 * config/i386/i386.c (ix86_expand_vector_logical_operator):
359 Replace nonimmediate_operand with vector_operand.
360 * config/i386/predicates.md (vector_operand): New predicate.
361 (general_vector_operand): Replace nonimmediate_operand with
363 * config/i386/sse.md: Replace nonimmediate_operand with
364 vector_operand and m constraint with Bm constraint on SSE
365 patterns with 16-byte memory operand.
366 * config/i386/subst.md (round_nimm_predicate): Replace
367 nonimmediate_operand with vector_operand.
368 (round_saeonly_nimm_predicate): Likewise.
369 (round_saeonly_nimm_scalar_predicate): New.
371 2016-01-05 H.J. Lu <hongjiu.lu@intel.com>
374 * config/i386/constraints.md (Bm): New constraint.
375 * config/i386/predicates.md (vector_memory_operand): New
377 * config/i386/sse.md: Replace xm with xBm in plusminus and
380 2016-01-05 Sandra Loosemore <sandra@codesourcery.com>
383 * doc/extend.texi (V850 Function Attributes): New section.
384 (V850 Variable Attributes): New section.
386 2016-01-05 Sandra Loosemore <sandra@codesourcery.com>
389 * doc/extend.texi (MicroBlaze Function Attributes): Document
390 interrupt_handler and fast_interrupt attributes.
392 2016-01-05 Sergei Trofimovich <siarheit@google.com>
395 * config/ia64/ia64.c (ia64_expand_load_address): Use gprel64
396 for local symbolic operands.
397 * config/ia64/predicates.md (local_symbolic_operand64): New
400 2016-01-05 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
402 PR rtl-optimization/68651
403 * combine.c (combine_simplify_rtx): Canonicalize x + x into
406 2016-01-05 Nathan Sidwell <nathan@acm.org>
408 * alias.c (compare_base_decls): Use symtab_node::get.
410 2016-01-05 Nick Clifton <nickc@redhat.com>
413 * ira-costs.c (copy_cost): Initialise the t_icode field of the
414 secondary_reload_info structure.
417 * config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Define to use weak
418 decls if weak support is available.
420 2016-01-04 Martin Sebor <msebor@redhat.com>
422 * doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.
424 2016-01-04 Michael Meissner <meissner@linux.vnet.ibm.com>
426 * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add
427 OPTION_MASK_P9_DFORM.
429 * config/rs6000/constraints.md (wo constraint): New constraint for
432 * config/rs6000/rs6000.c (rs6000_debug_reg_global): Add support
434 (rs6000_init_hard_regno_mode_ok): Likewise.
436 * config/rs6000/rs6000.h (r6000_reg_class_enum): Add support for
439 * config/rs6000/altivec.md (altivec_vperm_<mode>): Clean up vperm
440 expanders not to have constraints. Add support for ISA 3.0 xxperm
441 instruction. Add support for fusing xxlor with xxperm.
442 (altivec_vperm_<mode>_internal): Likewise.
443 (altivec_vperm_v8hiv16qi): Likewise.
444 (altivec_vperm_<mode>v16q): Likewise.
445 (altivec_vperm_<mode>_uns): Likewise.
446 (vperm_v8hiv4si): Likewise.
447 (vperm_v16qiv8hi): Likewise.
449 * doc/md.texi (RS/6000 constraints): Document wo constraint.
451 2016-01-04 Jakub Jelinek <jakub@redhat.com>
453 Update copyright years.
455 * gcc.c (process_command): Update copyright notice dates.
456 * gcov-dump.c (print_version): Ditto.
457 * gcov.c (print_version): Ditto.
458 * gcov-tool.c (print_version): Ditto.
459 * gengtype.c (create_file): Ditto.
460 * doc/cpp.texi: Bump @copying's copyright year.
461 * doc/cppinternals.texi: Ditto.
462 * doc/gcc.texi: Ditto.
463 * doc/gccint.texi: Ditto.
464 * doc/gcov.texi: Ditto.
465 * doc/install.texi: Ditto.
466 * doc/invoke.texi: Ditto.
468 2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
470 * config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer
471 modes larger than TImode as TImode if NEON is not enabled.
473 2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
476 * config/sparc/sparc.h (FUNCTION_ARG_REGNO_P): Return true in 64-bit
477 mode for %f0-%f31 only if TARGET_FPU.
479 2016-01-04 Eric Botcazou <ebotcazou@adacore.com>
482 * config/sparc/sparc.c (scan_record_type): Take into account subfields
483 to compute the PACKED_P predicate.
484 (function_arg_record_value): Minor tweaks.
486 2016-01-04 Thomas Preud'homme <thomas.preudhomme@arm.com>
488 * doc/install.texi (--with-multilib-list): Describe the meaning of the
489 option for arm*-*-* targets.
491 2016-01-03 Sandra Loosemore <sandra@codesourcery.com>
493 * doc/extend.texi (Common Function Attributes): Move docs for
494 MSP430-specific attributes to....
495 (MSP430 Function Attributes): ...here. Delete the redundant
496 entries and copy-edit the remaining text.
497 (MSP430 Variable Attributes): Use uniform format for index
498 entries and add a cross-reference to the corresponding function
501 2016-01-03 Vladimír Čunát <vcunat@gmail.com>
503 * doc/invoke.texi (RS/6000 and PowerPC Options): Fix
505 (x86 Options): Likewise.
507 2016-01-01 Sandra Loosemore <sandra@codesourcery.com>
511 * extend.texi (Common Function Attributes) <no_stack_limit>: New.
512 * invoke.texi (Code Gen Options) <-fno-stack-limit>: Add pointer
513 to corresponding attribute.
515 2016-01-01 Sandra Loosemore <sandra@codesourcery.com>
517 * doc/extend.texi (Common Function Attributes) <noplt>: Move
518 to correct alphabetization of table. Copy-edit and correct
520 <stack_protect>: Likewise.
521 <target_clones>: Likewise.
523 * doc/invoke.texi (Optimize Options) <-fstack-protector-explicit>:
525 (Code Gen Options) <-fno-plt>: Copy-edit.
527 2016-01-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
530 * config/tilegx/tilegx.md (clzsi2): Don't create DI subregs of
531 SI values. Explicitly convert SI to DI and vice-versa.
533 2016-01-01 Jakub Jelinek <jakub@redhat.com>
535 PR tree-optimization/69070
536 * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Only test
537 REAL_VALUE_ISSIGNALING_NAN on arg0 if arg0 is a REAL_CST.
540 * ubsan.c (ubsan_instrument_float_cast): Call
541 initialize_sanitizer_builtins.
544 * ifcvt.c (find_cond_trap): Give up if returnjump_p (jump).
546 Copyright (C) 2016 Free Software Foundation, Inc.
548 Copying and distribution of this file, with or without modification,
549 are permitted in any medium without royalty provided the copyright
550 notice and this notice are preserved.