PR c++/69164
[official-gcc.git] / gcc / ChangeLog
blob151cb89c7cbbd9ba4e6cdca8eaea3fb7c8d31f5b
1 2016-01-09  Jan Hubicka  <hubicka@ucw.cz>
3         * ipa-icf.c (sem_item_optimizer::merge_classes): Do not ICE on VAR_DECL
4         w/o DECL_NAME.
6 2016-01-08  Jakub Jelinek  <jakub@redhat.com>
8         PR tree-optimization/69167
9         * gimple-fold.c (replace_stmt_with_simplification): Also punt if
10         new SSA_NAME_OCCURS_IN_ABNORMAL_PHI SSA_NAMEs appear in operands of
11         ops[0] comparison.
12         * gimple-match-head.c (maybe_push_res_to_seq): Likewise.
14 2016-01-08  Alan Lawrence  <alan.lawrence@arm.com>
15             Richard Biener  <rguenther@suse.de>
17         PR tree-optimization/68707
18         * tree-vect-slp.c (vect_analyze_slp_instance): Cancel permuted SLP
19         instances that can be handled via vect_load_lanes.
21 2016-01-08  Uros Bizjak  <ubizjak@gmail.com>
23         * symtab.c (symtab_node::equal_address_to): Return -1 instead of 2
24         if we can't determine address equivalence.
25         * alias.c (compare_base_decl): Update for changed return value of
26         symtab_node::equal_address_to.
28 2016-01-08  Jason Merrill  <jason@redhat.com>
30         PR c++/68983
31         PR c++/67557
32         * function.c (assign_temp): Guard against TREE_ADDRESSABLE types here.
33         * expr.c (store_field): Not here.
34         * tree-cfgcleanup.c (fixup_noreturn_call): Don't clear LHS of a
35         call with TREE_ADDRESSABLE type.
36         * tree-cfg.c (verify_gimple_call): Adjust.
38 2016-01-08  Olivier Hainque  <hainque@adacore.com>
40         * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
41         libc_internal.
43 2016-01-08  Alan Lawrence  <alan.lawrence@arm.com>
45         * gcc.target/rs6000/paired.md (reduc_smax_v2sf): Rename to...
46         (reduc_smax_scal_v2sf): ...here, make result SFmode, extract element.
47         (reduc_smin_v2sf): Rename to...
48         (reduc_smin_scal_v2sf): ...here, make result SFmode, extract element.
49         (reduc_splus_v2sf): Rename to...
50         (reduc_plus_scal_v2sf): ...here, make result SFmode, extract element.
52 2016-01-08  Jakub Jelinek  <jakub@redhat.com>
54         PR tree-optimization/69162
55         * gimplify.c (gimplify_va_arg_expr): Encode original type of
56         valist argument in another argument.
57         (gimplify_modify_expr): Adjust for the above change.  Cleanup.
58         * tree-stdarg.c (expand_ifn_va_arg_1): Use new 3rd argument
59         to determine the va_list type, build a MEM_REF instead of
60         build_fold_indirect_ref.
62         PR tree-optimization/69172
63         * gimple-fold.c (gimple_fold_builtin_memory_chk): Pass type to
64         gimple_build.
66 2016-01-08  Thomas Preud'homme  <thomas.preudhomme@arm.com>
68         PR tree-optimization/67781
69         * tree-ssa-math-opts.c (find_bswap_or_nop): Zero out bytes in cmpxchg
70         and cmpnop in two steps: first the ones not accessed in original
71         gimple expression in a endian independent way and then the ones not
72         accessed in the final result in an endian-specific way.
74 2016-01-08  Jakub Jelinek  <jakub@redhat.com>
76         PR tree-optimization/69083
77         * tree-vect-slp.c (vect_get_constant_vectors): For
78         VECTOR_BOOLEAN_TYPE_P assert op is fold_convertible_p to vector_type's
79         element type.  If op is fold_convertible_p to vector_type's element
80         type, use NOP_EXPR instead of VCE.
82 2016-01-08  Segher Boessenkool  <segher@kernel.crashing.org>
84         PR rtl-optimization/67778
85         PR rtl-optimization/68634
86         PR rtl-optimization/68909
87         * shrink-wrap.c (try_shrink_wrapping): Add comment.  Don't pop
88         block from the stack until done with it.  Remove a superfluous
89         bitmap set.  Remove a superfluous bitmap test.
91 2016-01-07  Martin Sebor  <msebor@redhat.com>
93         PR c/68966
94         * doc/extend.texi (__atomic Builtins, __sync Builtins): Document
95         constraint on the type of arguments.
97 2016-01-07  Andreas Tobler  <andreast@gcc.gnu.org>
99         * config/arm/freebsd.h: Rename SUBTARGET_OVERRIDE_OPTIONS to
100         SUBTARGET_OVERRIDE_INTERNAL_OPTIONS. Adjust to check
101         unaligned_access on the gcc_options set.
102         * config/arm/arm.c (arm_option_override_internal): Use
103         SUBTARGET_OVERRIDE_INTERNAL_OPTIONS.
105 2016-01-07  Uros Bizjak  <ubizjak@gmail.com>
107         PR target/69140
108         * config/i386/i386.c (ix86_frame_pointer_required): Enable
109         frame pointer for TARGET_64BIT_MS_ABI when stack is misaligned.
111 2016-01-07  Uros Bizjak  <ubizjak@gmail.com>
113         Revert
114         2016-01-06  Uros Bizjak  <ubizjak@gmail.com>
116         PR target/69140
117         * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
118         depending on frame_pointer_needed before remaining integer and SSE
119         registers are saved.
121 2016-01-07  Sandra Loosemore <sandra@codesourcery.com>
123         PR 1078
124         * doc/extend.texi (Nvidia PDX Function Attributes): New section.
126 2016-01-07  H.J. Lu  <hongjiu.lu@intel.com>
128         PR target/69171
129         * config/i386/sse.md (<sse>_sqrt<mode>2<mask_name><round_name>):
130         Use the "xBm" constraint.
131         (float<sseintvecmodelower><mode>2<mask_name><round_name):
132         Likewise.
133         (sse_cvtsi2ss<round_name>): Use round_nimm_scalar_predicate.
134         (sse_cvtsi2ssq<round_name>): Likewise.
135         (sse_cvtss2si<round_name>): Likewise.
136         (sse_cvtss2siq<round_name>): Likewise.
137         (sse2_cvtsi2sdq<round_name>): Likewise.
138         (sse2_cvtsd2si<round_name>): Likewise.
139         (sse2_cvtsd2siq<round_name>): Likewise.
140         * config/i386/subst.md (round_nimm_scalar_predicate): New
141         predicate.
143 2015-12-15  Bernd Schmidt  <bschmidt@redhat.com>
145         PR middle-end/67639
146         * varasm.c (make_decl_rtl): Mark invalid register vars as
147         DECL_EXTERNAL.
149         PR rtl-optimization/66206
150         * bt-load.c (find_btr_use): Change first arg to be a pointer to an rtx.
151         All callers changed.
153 2016-01-07  Jakub Jelinek  <jakub@redhat.com>
155         PR tree-optimization/69141
156         * tree-ssa-pre.c: Include langhooks.h.
157         (eliminate_dom_walker::before_dom_children): Use
158         lang_hooks.decl_printable_name instead of
159         cgraph_node::get ()->name ().
161         PR middle-end/68960
162         * gimple-expr.c (copy_var_decl): If var has DECL_USER_ALIGN set, copy
163         it and DECL_ALIGN too.
165 2016-01-06  Robert Suchanek  <robert.suchanek@imgtec.com>
167         * config/mips/mips-ftypes.def: Sort to lexicographical order.
169 2016-01-06  Uros Bizjak  <ubizjak@gmail.com>
171         PR target/69140
172         * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
173         depending on frame_pointer_needed before remaining integer and SSE
174         registers are saved.
176 2015-01-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
178         * config/rs6000/vsx.md (*p9_vecload_<mode>): Replace VSX_M
179         mode iterator with VSX_M2.
180         (*p9_vecstore_<mode>): Likewise.
181         (*vsx_le_permute_<mode>): Restrict to !TARGET_P9_VECTOR.
182         (*vsx_le_perm_load_<mode> for VSX_LE_128): Likewise.
183         (*vsx_le_perm_store_<mode> for VSX_LE_128): Likewise.
184         (define_split for VSX_LE128 stores): Likewise.
185         (define_peephole2 for TImode LE swaps): Likewise.
186         (define_split for VSX_LE128 post-reload stores): Likewise.
188 2016-01-06  Marek Polacek  <polacek@redhat.com>
190         PR sanitizer/69099
191         * convert.c (convert_to_integer_1): Adjust call to
192         ubsan_instrument_float_cast.  Use NULL_TREE instead of NULL.
193         * ubsan.c (ubsan_instrument_float_cast): Drop the ARG parameter.  Use
194         EXPR instead of ARG.
195         * ubsan.h (ubsan_instrument_float_cast): Adjust declaration.
197 2016-01-05  Sandra Loosemore <sandra@codesourcery.com>
199         PR 1078
200         * doc/extend.texi (RL78 Variable Attributes): New section.
202 2016-01-05  Marek Polacek  <polacek@redhat.com>
204         PR c/69104
205         * builtins.c (get_memmodel): Use expansion point location rather than
206         the input location.  Call warning_at rather than warning.
207         (expand_builtin_atomic_compare_exchange): Likewise.
208         (expand_builtin_atomic_load): Likewise.
209         (expand_builtin_atomic_store): Likewise.
210         (expand_builtin_atomic_clear): Likewise.
212 2016-01-05  H.J. Lu  <hongjiu.lu@intel.com>
214         PR target/68991
215         * config/i386/i386.c (ix86_expand_vector_logical_operator):
216         Replace nonimmediate_operand with vector_operand.
217         * config/i386/predicates.md (vector_operand): New predicate.
218         (general_vector_operand): Replace nonimmediate_operand with
219         vector_operand.
220         * config/i386/sse.md: Replace nonimmediate_operand with
221         vector_operand and m constraint with Bm constraint on SSE
222         patterns with 16-byte memory operand.
223         * config/i386/subst.md (round_nimm_predicate): Replace
224         nonimmediate_operand with vector_operand.
225         (round_saeonly_nimm_predicate): Likewise.
226         (round_saeonly_nimm_scalar_predicate): New.
228 2016-01-05  H.J. Lu  <hongjiu.lu@intel.com>
230         PR target/68991
231         * config/i386/constraints.md (Bm): New constraint.
232         * config/i386/predicates.md (vector_memory_operand): New
233         predicate.
234         * config/i386/sse.md: Replace xm with xBm in plusminus and
235         any_logic patterns.
237 2016-01-05  Sandra Loosemore <sandra@codesourcery.com>
239         PR 1078
240         * doc/extend.texi (V850 Function Attributes): New section.
241         (V850 Variable Attributes): New section.
243 2016-01-05  Sandra Loosemore <sandra@codesourcery.com>
245         PR 1078
246         * doc/extend.texi (MicroBlaze Function Attributes): Document
247         interrupt_handler and fast_interrupt attributes.
249 2016-01-05  Sergei Trofimovich <siarheit@google.com>
251         PR other/60465
252         * config/ia64/ia64.c (ia64_expand_load_address): Use gprel64
253         for local symbolic operands.
254         * config/ia64/predicates.md (local_symbolic_operand64): New
255         predicate.
257 2016-01-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
259         PR rtl-optimization/68651
260         * combine.c (combine_simplify_rtx): Canonicalize x + x into
261         x << 1.
263 2016-01-05  Nathan Sidwell  <nathan@acm.org>
265         * alias.c (compare_base_decls): Use symtab_node::get.
267 2016-01-05  Nick Clifton  <nickc@redhat.com>
269         PR target/68770
270         * ira-costs.c (copy_cost): Initialise the t_icode field of the
271         secondary_reload_info structure.
273         PR target/66655
274         * config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Define to use weak
275         decls if weak support is available.
277 2016-01-04  Martin Sebor  <msebor@redhat.com>
279         * doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.
281 2016-01-04  Michael Meissner  <meissner@linux.vnet.ibm.com>
283         * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add
284         OPTION_MASK_P9_DFORM.
286         * config/rs6000/constraints.md (wo constraint): New constraint for
287         ISA 3.0 (power9).
289         * config/rs6000/rs6000.c (rs6000_debug_reg_global): Add support
290         for wo constraint.
291         (rs6000_init_hard_regno_mode_ok): Likewise.
293         * config/rs6000/rs6000.h (r6000_reg_class_enum): Add support for
294         wo constraint.
296         * config/rs6000/altivec.md (altivec_vperm_<mode>): Clean up vperm
297         expanders not to have constraints.  Add support for ISA 3.0 xxperm
298         instruction.  Add support for fusing xxlor with xxperm.
299         (altivec_vperm_<mode>_internal): Likewise.
300         (altivec_vperm_v8hiv16qi): Likewise.
301         (altivec_vperm_<mode>v16q): Likewise.
302         (altivec_vperm_<mode>_uns): Likewise.
303         (vperm_v8hiv4si): Likewise.
304         (vperm_v16qiv8hi): Likewise.
306         * doc/md.texi (RS/6000 constraints): Document wo constraint.
308 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
310         Update copyright years.
312         * gcc.c (process_command): Update copyright notice dates.
313         * gcov-dump.c (print_version): Ditto.
314         * gcov.c (print_version): Ditto.
315         * gcov-tool.c (print_version): Ditto.
316         * gengtype.c (create_file): Ditto.
317         * doc/cpp.texi: Bump @copying's copyright year.
318         * doc/cppinternals.texi: Ditto.
319         * doc/gcc.texi: Ditto.
320         * doc/gccint.texi: Ditto.
321         * doc/gcov.texi: Ditto.
322         * doc/install.texi: Ditto.
323         * doc/invoke.texi: Ditto.
325 2016-01-04  Eric Botcazou  <ebotcazou@adacore.com>
327         * config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer
328         modes larger than TImode as TImode if NEON is not enabled.
330 2016-01-04  Eric Botcazou  <ebotcazou@adacore.com>
332         PR target/69100
333         * config/sparc/sparc.h (FUNCTION_ARG_REGNO_P): Return true in 64-bit
334         mode for %f0-%f31 only if TARGET_FPU.
336 2016-01-04  Eric Botcazou  <ebotcazou@adacore.com>
338         PR target/69072
339         * config/sparc/sparc.c (scan_record_type): Take into account subfields
340         to compute the PACKED_P predicate.
341         (function_arg_record_value): Minor tweaks.
343 2016-01-04  Thomas Preud'homme  <thomas.preudhomme@arm.com>
345         * doc/install.texi (--with-multilib-list): Describe the meaning of the
346         option for arm*-*-* targets.
348 2016-01-03  Sandra Loosemore <sandra@codesourcery.com>
350         * doc/extend.texi (Common Function Attributes): Move docs for
351         MSP430-specific attributes to....
352         (MSP430 Function Attributes): ...here.  Delete the redundant
353         entries and copy-edit the remaining text.
354         (MSP430 Variable Attributes): Use uniform format for index
355         entries and add a cross-reference to the corresponding function
356         attribute docs.
358 2016-01-03  Vladimír Čunát <vcunat@gmail.com>
360         * doc/invoke.texi (RS/6000 and PowerPC Options): Fix
361         -finite-math typo.
362         (x86 Options): Likewise.
364 2016-01-01  Sandra Loosemore  <sandra@codesourcery.com>
366         PR 1078
368         * extend.texi (Common Function Attributes) <no_stack_limit>: New.
369         * invoke.texi (Code Gen Options) <-fno-stack-limit>: Add pointer
370         to corresponding attribute.
372 2016-01-01  Sandra Loosemore  <sandra@codesourcery.com>
374         * doc/extend.texi (Common Function Attributes) <noplt>: Move
375         to correct alphabetization of table.  Copy-edit and correct
376         markup.
377         <stack_protect>: Likewise.
378         <target_clones>: Likewise.
379         <simd>: Likewise.
380         * doc/invoke.texi (Optimize Options) <-fstack-protector-explicit>:
381         Correct punctuation.
382         (Code Gen Options) <-fno-plt>: Copy-edit.
384 2016-01-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
386         PR target/68917
387         * config/tilegx/tilegx.md (clzsi2): Don't create DI subregs of
388         SI values.  Explicitly convert SI to DI and vice-versa.
390 2016-01-01  Jakub Jelinek  <jakub@redhat.com>
392         PR tree-optimization/69070
393         * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Only test
394         REAL_VALUE_ISSIGNALING_NAN on arg0 if arg0 is a REAL_CST.
396         PR sanitizer/69055
397         * ubsan.c (ubsan_instrument_float_cast): Call
398         initialize_sanitizer_builtins.
400         PR target/69015
401         * ifcvt.c (find_cond_trap): Give up if returnjump_p (jump).
403 Copyright (C) 2016 Free Software Foundation, Inc.
405 Copying and distribution of this file, with or without modification,
406 are permitted in any medium without royalty provided the copyright
407 notice and this notice are preserved.