609b135dbb5b1bb1c1f435d1fab65eb06cd757e7
[platform/upstream/gcc.git] / gcc / ChangeLog
1 2016-01-15  David Edelsohn  <dje.gcc@gmail.com>
2
3         PR target/68609
4         * config/rs6000/rs6000.c (rs6000_emit_msub): Delete.
5         (rs6000_emit_swsqrt): Convert to Goldschmidt's Algorithm
6         * config/rs6000/rs6000.md (sqrt<mode>2): Limit swsqrt to high
7         precision estimate.
8
9 2016-01-15  Richard Biener  <rguenther@suse.de>
10
11         PR tree-optimization/66856
12         * tree-vect-loop.c (vect_transform_loop): Free SLP instances here.
13         * tree-vect-slp.c (vect_free_slp_tree): Decrement stmt reference count.
14         (vect_create_new_slp_node): Increment stmt reference count.
15         (vect_get_and_check_slp_defs): Make sure stmts are nor already in
16         an SLP tree before swapping operands.
17         (vect_build_slp_tree): Likewise.
18         (destroy_bb_vec_info): Free stmt info after SLP instances.
19         * tree-vect-stmts.c (new_stmt_vec_info): Initialize reference count.
20         * tree-vectorizer.h (struct _stmt_vec_info): Add num_slp_uses field.
21         (STMT_VINFO_NUM_SLP_USES): New macro.
22
23 2016-01-15  Richard Biener  <rguenther@suse.de>
24
25         PR debug/69137
26         * dwarf2out.c (add_linkage_name_raw): New function split out from ...
27         (add_linkage_name): ... here.
28         (gen_typedef_die): Use add_linkage_name_raw instead of
29         add_linkage_attr to delay DECL_ASSEMBLER_NAME computation
30         if necessary.
31
32 2016-01-15  Cesar Philippidis  <cesar@codesourcery.com>
33
34         * gimplify.c (oacc_default_clause): Decode reference and pointer
35         types for both kernels and parallel regions.
36
37 2016-01-15  Richard Sandiford  <richard.sandiford@arm.com>
38
39         PR middle-end/69246
40         * calls.c (emit_call_1): Force n_popped to zero for sibcalls.
41
42 2016-01-15  Ilya Enkovich  <enkovich.gnu@gmail.com>
43
44         * config/i386/i386.c (scalar_chain::compute_convert_gain): Fix typo.
45         (convert_scalars_to_vector): Likewise.
46
47 2016-01-15  Jonathan Wakely  <jwakely@redhat.com>
48
49         * doc/extend.texi (Type Traits): Fix grammar.
50
51 2016-01-15  Martin Jambor  <mjambor@suse.cz>
52
53         * tree-inline.c (remap_decl): Use existing dclarations if
54         remapping a type and prevent_decl_creation_for_types.
55         (replace_locals_stmt): Do an initial remapping of non-VLA typed
56         decls first.  Do real remapping with
57         prevent_decl_creation_for_types set.
58         * tree-inline.h (copy_body_data): New field
59         prevent_decl_creation_for_types, moved remap_var_for_cilk to avoid
60         padding.
61
62 2016-01-15  Dominik Vogt  <vogt@linux.vnet.ibm.com>
63
64         * config/s390/s390.opt (mmvcle): More verbose help text.
65
66 2016-01-15  Dominik Vogt  <vogt@linux.vnet.ibm.com>
67
68         * config/s390/s390.opt: Add period to -mzvector option text.
69
70 2016-01-15  Richard Biener  <rguenther@suse.de>
71
72         PR tree-optimization/68961
73         * tree-vect-slp.c (vect_analyze_slp_cost_1): Consider cost
74         of invariants in stores again.
75
76 2016-01-15  Sebastian Huber  <sebastian.huber@embedded-brains.de>
77
78         * config/arm/t-rtems: Add cortex-m7/fpv5-d16 multilib.
79
80 2016-01-15  Ilya Enkovich  <enkovich.gnu@gmail.com>
81
82         * config/i386/i386.c (ix86_expand_branch): Don't split
83         DI mode xor instruction to SI mode.
84
85 2016-01-15  Jan Hubicka  <hubicka@ucw.cz>
86
87         PR ipa/68148
88         * ipa-icf.c (sem_function::merge): Virtual functions may become
89         reachable even if they address is not taken and there are no
90         idrect calls.
91
92 2016-01-15  Jan Hubicka  <hubicka@ucw.cz>
93
94         * lto-streamer-out.c (subtract_estimated_size): New function.
95         (get_symbol_initial_value): Use it.
96
97 2016-01-15  Christian Bruel  <christian.bruel@st.com>
98
99         PR target/65837
100         * config/arm/arm-builtins.c (ARM_BUILTIN_CRYPTO_BASE): New enum tag.
101         (arm_init_neon_builtins_internal): Rename arm_init_neon_builtins,
102         (arm_init_crypto_builtins_internal): Rename arm_init_crypto_builtins.
103         use add_builtin_function_ext_scope instead of add_builtin_function.
104         (neon_set_p, neon_crypto_set_p): Remove.
105         (arm_init_builtins): Always call arm_init_neon_builtins and
106         arm_init_crypto_builtins.
107         (arm_expand_builtin): Check that builtins are allowed for the arch.
108         * config/arm/arm-protos.h (arm_init_neon_builtins): Remove prototype.
109         * config/arm/arm.c (arm_valid_target_attribute_tree): Remove
110         arm_init_neon_builtins call.
111
112 2016-01-15  Richard Biener  <rguenther@suse.de>
113
114         PR tree-optimization/69117
115         * tree-ssa-sccvn.h (struct vn_ssa_aux): Add info member.
116         * tree-ssa-sccvn.c (set_ssa_val_to): Save and adjust SSA name info
117         of the leader conservatively.
118         (free_scc_vn): Restore original SSA name infos.
119
120 2016-01-14  Jeff Law  <law@redhat.com>
121
122         PR tree-optimization/69270
123         * tree-ssa-dom.c (ssa_name_has_boolean_range): If the type has a
124         single bit of precision, verify it's also unsigned.
125         (record_edge_info): Use constant_boolean_node rather than fold_convert
126         to convert boolean_true/boolean_false to the right type.
127
128 2016-01-14  Richard Henderson  <rth@redhat.com>
129
130         PR rtl-opt/69014
131         * loop-doloop.c (record_reg_sets): New.
132         (doloop_optimize): Reject the transform if the sequence
133         clobbers registers live at the end of the loop block.
134         (doloop_optimize_loops): Enable df_live if needed. 
135
136 2016-01-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
137
138         * config/rs6000/rs6000-builtin.def: Revert 2016-01-13 change.
139         * gcc/config/rs6000/rs6000.c: Likewise.
140         * gcc/config/rs6000/rs6000.h: Likewise.
141         * gcc/config/rs6000/rs6000.md: Likewise.
142         * gcc/doc/extend.texi: Likewsie.
143
144 2016-01-14  Jeff Law  <law@redhat.com>
145
146         * tree-ssa-dom.c (ssa_name_has_boolean_range): Fix comment
147         typo.
148
149 2016-01-14  Richard Henderson  <rth@redhat.com>
150
151         PR c/69272
152         PR tree-opt/68964
153         * trans-mem.c (tm_log_emit_stmt): Fix unit size to bit size.
154         * tree.c (build_tm_vector_builtins): Use builtin_decl_explicit_p
155         instead of builtin_decl_declared_p to test for declaration.
156
157 2016-01-14  Nicklas Bo Jensen  <nbjensen@gmail.com>
158
159         * doc/loop.texi (Loop Analysis and Representation): Document
160         loop_depth function.
161
162 2016-01-14  Tom de Vries  <tom@codesourcery.com>
163
164         PR tree-optimization/68773
165         * omp-low.c (expand_omp_target): Don't set force_output.
166         * varpool.c (varpool_node::get_create): Same.
167         * lto-cgraph.c (input_offload_tables): Mark entries in offload_vars and
168         offload_funcs with force_output.
169
170 2016-01-14  Jakub Jelinek  <jakub@redhat.com>
171
172         PR debug/69244
173         * lra-eliminations.c (move_plus_up): Don't change anything if either
174         the outer or inner subreg mode is not MODE_INT.
175         * dwarf2out.c (mem_loc_descriptor): For SUBREG, if outer mode is
176         integral <= DWARF2_ADDR_SIZE, convert to untyped afterwards.
177
178 2016-01-14  Alan Lawrence  <alan.lawrence@arm.com>
179
180         * doc/md.texi (reduc_smin_@var{m}, reduc_smax_@var{m},
181         reduc_umin_@var{m}, reduc_umax_@var{m}, reduc_splus_@var{m},
182         reduc_uplus_@var{m}): Remove.
183         * expr.c (expand_expr_real_2): Remove expansion path for
184         reduc_[us](min|max|plus) optabs.
185         * optabs-tree.c (scalar_reduc_to_vector): Remove.
186         * optabs-tree.h (scalar_reduc_to_vector): Remove.
187         * optabs.def (reduc_smax_optab, reduc_smin_optab, reduc_splus_optab,
188         reduc_umax_optab, reduc_umin_optab, reduc_uplus_optab): Remove.
189         * tree-vect-loop.c (vectorizable_reduction): Remove test for
190         reduc_[us](min|max|plus) optabs.
191
192 2016-01-14  Alan Lawrence  <alan.lawrence@arm.com>
193
194         * config/mips/mips-ps-3d.md (reduc_splus_v2sf): Remove.
195         (reduc_plus_scal_v2sf): New.
196         (reduc_smax_v2sf): Rename to...
197         (reduc_smax_scal_v2sf): ...here, make result SFmode, add vec_extract.
198         (reduc_smin_v2sf): Rename to...
199         (reduc_smin_scal_v2sf): ...here, make result SFmode, add vec_extract.
200
201 2016-01-14  Jan Hubicka  <hubicka@ucw.cz>
202
203         * alias.c (compare_base_symbol_refs): New function.
204         (rtx_equal_for_memref_p, base_alias_check, memrefs_conflict_p): Use
205         it.
206
207 2016-01-14  Jakub Jelinek  <jakub@redhat.com>
208
209         PR middle-end/68146
210         PR tree-optimization/69155
211         * tree-complex.c: Include cfganal.h.
212         (phis_to_revisit): New variable.
213         (extract_component): Add phiarg_p argument.  Assert that returned
214         SSA_NAME has non-NULL SSA_NAME_DEF_STMT unless phiarg_p is true.
215         (update_phi_components): Partly rewrite to use loop over real/imag
216         components instead of code duplication.  If extract_component returns
217         SSA_NAME with NULL SSA_NAME_DEF_STMT, store SSA_NAME_VAR or
218         create_tmp_reg into the PHI node instead, and mention the phi triplet
219         in phis_to_revisit.
220         (tree_lower_complex): Walk bbs in rpo order.  Adjust phis recorded
221         in phis_to_revisit at the end.
222
223 2016-01-14  Richard Biener  <rguenther@suse.de>
224
225         PR tree-optimization/68060
226         * tree-vect-loop.c (vect_is_simple_reduction): Check the
227         outer loop reduction is only used in the inner loop before
228         detecting a double reduction.
229
230 2016-01-14  Jakub Jelinek  <jakub@redhat.com>
231
232         PR target/68269
233         * combine.c (expand_field_assignment): Punt if compute_mode is
234         unsupported scalar mode.
235
236 2016-01-14  Richard Biener  <rguenther@suse.de>
237
238         PR tree-optimization/66856
239         * tree-vect-slp.c (vect_build_slp_tree): Refactor to build
240         SLP node only if it built successfully.
241         (vect_analyze_slp_instance): Adjust.
242
243 2016-01-14  Jeff Law  <law@redhat.com>
244
245         PR tree-optimization/69270
246         * tree-ssa-dom.c (ssa_name_has_boolean_range): New function.
247         (record_edge_info): Use it.  Convert boolean_{true,false}_node
248         to the type of op0.
249
250 2016-01-13  Jan Hubicka  <hubicka@ucw.cz>
251
252         PR ipa/66487
253         * ipa-polymorphic-call.c (inlined_polymorphic_ctor_dtor_block_p):
254         use block_ultimate_origin
255         (noncall-stmt_may_be_vtbl_ptr_store): Likewise.
256
257 2016-01-13  Sandra Loosemore <sandra@codesourcery.com>
258
259         * doc/invoke.texi (Submodel Options): Rename section to
260         "Machine-Dependent Options" to better reflect its content.
261         Rewrite introductory text to remove archaic CPU names.
262         Update references.
263
264 2016-01-13  Sandra Loosemore <sandra@codesourcery.com>
265
266         * doc/invoke.texi (Code Gen Options): Move section up in file,
267         before target-specific options.  Update menu and option summary
268         to reflect the new section ordering.
269
270 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
271
272         * doc/invoke.texi (C Dialect Options): Adjust -std default for C++.
273         (C++ Dialect Options): Add cross-reference to -std option.
274         * doc/standards.texi (C++ Language): Document C++14 support.
275
276 2016-01-13  Michael Meissner  <meissner@linux.vnet.ibm.com>
277
278         * config/rs6000/rs6000-builtin.def (BU_FLOAT128_2): Add support
279         for pack/unpack functions for __ibm128.
280         (PACK_IF): Likewise.
281         (UNPACK_IF): Likewise.
282
283         * config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Add
284         support for __ibm128 pack/unpack functions.
285         (rs6000_invalid_builtin): Likewise.
286         (rs6000_init_builtins): Likewise.
287         (rs6000_opt_masks): Likewise.
288
289         * config/rs6000/rs6000.h (MASK_FLOAT128): Add short name.
290         (RS6000_BTM_FLOAT128): Add support for __ibm128 pack/unpack
291         functions
292         (RS6000_BTM_COMMON): Likewise.
293
294         * config/rs6000/rs6000.md (f128_vsx): New mode attribute.
295         (unpack<mode>): Use FMOVE128_FPR iterator instead of FMOVE128, to
296         disallow __builtin_{pack,unpack}_longdouble if long double is IEEE
297         128-bit floating point.  Add support for the double values to be
298         in Altivec registers for TF/IF packing and unpacking, but restrict
299         TD packing sub-fields to be FPR registers.  Don't allow overlapped
300         register support for packing.  Allow pack inputs to be memory
301         locations.  Don't build generator functions for unpack<mode>_dm
302         and unpack<mode>_nodm.
303         (unpack<mode>_dm): Likewise.
304         (unpack<mode>_nodm): Likewise.
305         (pack<mode>): Likewise.
306
307         * config/rs6000/rs6000-builtin.def (__builtin_pack_ibm128): Add
308         built-in functions to pack/unpack explicit __ibm128 values.
309         (__builtin_unpack_ibm128): Likewise.
310
311         * doc/extend.texi (PowerPC Built-in Functions): Document
312         __builtin_pack_ibm128 and __builtin_unpack_ibm128.
313
314 2016-01-13  Bernd Schmidt  <bschmidt@redhat.com>
315
316         PR c/66208
317         * c-common.c (check_function_nonnull): Remove unnecessary declaration.
318         Add new arg loc and pass it down as context.
319         (check_nonnull_arg): Don't mark ctx arg as unused. Use it as a pointer
320         to the location to use for the warning.
321         (check_function_arguments): New arg loc.  All callers changed.  Pass
322         it to check_function_nonnull.
323         * c-common.h (check_function_arguments): Adjust declaration.
324
325 2016-01-13  Jakub Jelinek  <jakub@redhat.com>
326
327         PR tree-optimization/69156
328         * gimple.c (validate_type): Removed.
329         (gimple_builtin_call_types_compatible_p): Use
330         useless_type_conversion_p instead of validate_type.
331         * value-prof.c (gimple_stringop_fixed_value): Fold
332         icall_size to correct type.
333
334 2016-01-13  Jonathan Wakely  <jwakely@redhat.com>
335
336         * doc/extend.texi (__atomic Builtins): Clarify compare_exchange
337         effects.
338
339 2016-01-13  Richard Henderson  <rth@redhat.com>
340
341         PR tree-opt/68964
342         * target.def (builtin_tm_load, builtin_tm_store): Remove.
343         * config/i386/i386.c (ix86_builtin_tm_load): Remove.
344         (ix86_builtin_tm_store): Remove.
345         (TARGET_VECTORIZE_BUILTIN_TM_LOAD): Remove.
346         (TARGET_VECTORIZE_BUILTIN_TM_STORE): Remove.
347         * doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_TM_LOAD): Remove.
348         (TARGET_VECTORIZE_BUILTIN_TM_STORE): Remove.
349         * doc/tm.texi: Rebuild.
350
351         * gtm-builtins.def (BUILT_IN_TM_MEMCPY_RNWT): New.
352         (BUILT_IN_TM_MEMCPY_RTWN): New.
353         * trans-mem.c (tm_log_emit_stmt): Rearrange code for better
354         fallback from vector to integer helpers.
355         (build_tm_load): Handle vector types directly, instead of
356         via target hook.
357         (build_tm_store): Likewise.
358         (expand_assign_tm): Prepare for register types not handled by
359         the above.  Copy them to memory and use memcpy.
360         * tree.c (tm_define_builtin): New.
361         (find_tm_vector_type): New.
362         (build_tm_vector_builtins): New.
363         (build_common_builtin_nodes): Call it.
364
365 2016-01-13  Uros Bizjak  <ubizjak@gmail.com>
366
367         * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): Return -1 for
368         TARGET_SSE_MATH without TARGET_SSE2.  Rewrite.
369
370 2016-01-13  Tom de Vries  <tom@codesourcery.com>
371
372         PR tree-optimization/69169
373         * tree-ssa-structalias.c (create_variable_info_for_1): Add and handle
374         handled_struct_type param.
375         (create_variable_info_for, intra_create_variable_infos): Call
376         create_variable_info_for_1 with extra arg.
377
378 2016-01-13  Yvan Roux  <yvan.roux@linaro.org>
379
380         * config/arm/arm-arches.def: Remove spurious whitespace in "armv8.1-a"
381         and "armv8.1-a+crc" entries.
382
383 2016-01-13  Alexander Fomin  <alexander.fomin@intel.com>
384
385         PR target/69228
386         * config/i386/sse.md (define_expand "avx512pf_gatherpf<mode>sf"):
387         Change first operand predicate from register_or_constm1_operand
388         to register_operand.
389         (define_expand "avx512pf_gatherpf<mode>df"): Likewise.
390         (define_expand "avx512pf_scatterpf<mode>sf"): Likewise.
391         (define_expand "avx512pf_scatterpf<mode>df"): Likewise.
392         (define_insn "*avx512pf_gatherpf<mode>sf"): Remove.
393         (define_insn "*avx512pf_gatherpf<mode>df"): Likewise.
394         (define_insn "*avx512pf_scatterpf<mode>sf"): Likewise.
395         (define_insn "*avx512pf_scatterpf<mode>df"): Likewise.
396         * config/i386/i386.c (ix86_expand_builtin): Remove first operand
397         comparison with constm1_rtx from vec_prefetch_gen part.
398
399 2016-01-13  Richard Biener  <rguenther@suse.de>
400
401         PR tree-optimization/69013
402         * tree-ssa-uninit.c (prune_uninit_phi_opnds_in_unrealizable_paths):
403         Exchange assert for a test.
404
405 2016-01-13  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
406
407         PR target/69247
408         * config/s390/s390.md (bswaphi splitter): Use simplify_gen_subreg.
409
410 2016-01-13  Richard Biener  <rguenther@suse.de>
411
412         PR tree-optimization/69242
413         * tree-ssa-sccvn.c (visit_reference_op_load): Replace bogus
414         assert with a check.
415
416 2016-01-13  Richard Biener  <rguenther@suse.de>
417
418         PR tree-optimization/69186
419         * tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
420         Properly guard vect_update_misalignment_for_peel call.
421
422 2016-01-12  Jeff Law  <law@redhat.com>
423
424         PR tree-optimization/pr67755
425         * tree-ssa-threadupdate.c (struct ssa_local_info_t): Add new field
426         "need_profile_correction".
427         (thread_block_1): Initialize new field to false by default.  If we
428         have multiple thread paths through a common joiner to different
429         final targets, then set new field to true.
430         (compute_path_counts): Only do count adjustment when it's really
431         needed.
432
433 2016-01-12  Sandra Loosemore  <sandra@codesourcery.com>
434
435         * doc/invoke.texi (Spec Files): Move section down in file, past
436         all command-line option descriptions.
437
438 2016-01-12  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
439
440         PR middle-end/54809
441         * doc/gty.texi: Remove documentation of mark_hook.
442         * gengtype.c (struct write_types_data): Remove code to support
443         mark_hook attribute.
444         (walk_type): Likewise.
445         (write_func_for_structure): Likewise.
446
447 2016-01-12  Sandra Loosemore  <sandra@codesourcery.com>
448
449         * doc/invoke.texi (Option Summary) Move -no-canonical-prefixes to
450         Directory Options, and -specs= to Overall Options.
451         (Overall Options): Adjust similarly.  Reorder to group related
452         options together.  Make -specs= cross-reference the spec file details.
453         (Directory Options): Adjust similarly.
454
455 2016-01-12  Jeff Law  <law@redhat.com>
456
457         * tree-ssa-threadupdate.c: Various whitespace and typo fixes.
458
459 2016-01-12  Olivier Hainque  <hainque@adacore.com>
460
461         * gcc.c (spec_undefvar_allowed): New global.
462         (process_command): Set to true when running for --version or --help,
463         alone or together.
464         (getenv_spec_function): When the variable is not defined, use the
465         variable name as the variable value if we're allowed not to issue
466         a fatal error.
467
468 2016-01-12  Bin Cheng  <bin.cheng@arm.com>
469
470         PR tree-optimization/68911
471         * tree-vrp.c (adjust_range_with_scev): Check overflow in range
472         information computed for expression "init + nit * step".
473
474 2016-01-12  Sandra Loosemore  <sandra@codesourcery.com>
475
476         * doc/invoke.texi (Invoking GCC): Copy-edit.  Incorporate information
477         about name of GCC executable.  Remove deleted node from menu.
478         (Directory Options) <-B>: Remove cross-reference to deleted node.
479         (Target Options): Delete section.
480
481 2016-01-12  Christian Bruel  <christian.bruel@st.com>
482
483         PR target/69180
484         * config/arm/arm-c.c (arm_pragma_target_parse): Set NODE_CONDITIONAL
485         for __ARM_NEON_FP, __ARM_FP, _ARM_FEATURE_LDREX.
486
487 2016-01-12  Jakub Jelinek  <jakub@redhat.com>
488
489         PR target/69198
490         * config/i386/i386.c (ix86_expand_special_args_builtin): Ensure
491         aligned_mem is properly set for AVX512-VL floating point masked
492         stores.
493
494         PR target/69175
495         * ifcvt.c (cond_exec_process_if_block): When removing the last
496         insn from then_bb, remove also any possible barriers that follow it.
497
498 2016-01-12  H.J. Lu  <hongjiu.lu@intel.com>
499
500         PR target/68456
501         PR target/69226
502         * config/i386/iamcu.h (SIZE_TYPE): New macro.
503         (PTRDIFF_TYPE): Likewise.
504         (WCHAR_TYPE): Likewise.
505         (WCHAR_TYPE_SIZE): Likewise.
506         (STDINT_LONG32): Likewise.
507
508 2016-01-12  Richard Biener  <rguenther@suse.de>
509
510         PR tree-optimization/69053
511         * tree-vect-loop.c (get_initial_def_for_reduction): Properly
512         convert initial value for cond reductions.
513
514 2016-01-12  Richard Biener  <rguenther@suse.de>
515
516         PR tree-optimization/69007
517         * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Move
518         widen_sum after dot_prod and sad.
519
520 2016-01-12  Richard Biener  <rguenther@suse.de>
521
522         PR tree-optimization/69168
523         * tree-vect-loop.c (vect_analyze_loop_2): Reset both main and
524         pattern stmt SLP type.
525         * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Patterns may
526         end up unused so cope with that case.
527
528 2016-01-12  Richard Biener  <rguenther@suse.de>
529
530         PR tree-optimization/69157
531         * tree-vect-stmts.c (vectorizable_mask_load_store): Check
532         stmts def type only during analyze phase.
533         (vectorizable_call): Likewise.
534         (vectorizable_simd_clone_call): Likewise.
535         (vectorizable_conversion): Likewise.
536         (vectorizable_assignment): Likewise.
537         (vectorizable_shift): Likewise.
538         (vectorizable_operation): Likewise.
539         (vectorizable_store): Likewise.
540         (vectorizable_load): Likewise.
541
542 2016-01-12  Richard Biener  <rguenther@suse.de>
543
544         PR tree-optimization/69174
545         * tree-vect-stmts.c (vect_mark_relevant): Remove excessive vertical
546         space.
547         (vectorizable_load): Properly compute the number of loads needed
548         for permuted strided SLP loads and do not spuriously assign
549         to SLP_TREE_VEC_STMTS.
550
551 2016-01-12  Andris Pavenis  <andris.pavenis@iki.fi>
552
553         * config/i386/djgpp.h (PREFERRED_DEBUGGING_TYPE): Define to DWARF2
554         (TARGET_ASM_OUTPUT_IDENT): Define to default_asm_output_ident_directive
555         (MD_EXEC_PREFIX): Remove.
556         (MD_STARTFILE_PREFIX) Removee.
557         (FILE_NAME_ABSOLUTE_P): Remove.
558         (CPP_SPEC): Do not read macros from sys/version.h.
559         (LINK_COMMAND_SPEC): Remove.
560         (LOCAL_INCLUDE_DIR): Remove.
561         (TARGET_ASM_NAMED_SECTION): Define to i386_djgpp_asm_named_section
562         (TARGET_OS_CPP_BUILTINS): Add DJGPP (non ISO only), __DJGPP, __DJGPP__, unix.
563         (POST_LINK_SPEC): Define to invoke stubify after linker
564         (LIBSTDCXX): Remove define
565         (DBX_REGISTER_NUMBER): Define to svr4_dbx_register_map.
566         (DEFAULT_PCC_STRUCT_RETURN): Define to 1.
567         (SUBTARGET_OVERRIDE_OPTIONS): Remove warning about -mbnu2210.
568         (SUBTARGET_OVERRIDE_OPTIONS): Ignore -fPIC and generate message.
569         (SUBTARGET_OVERRIDE_OPTIONS): Default to DWARF2 debugging info.
570         (IX86_MAYBE_NO_LIBGCC_TFMODE): Remove.
571         (i386_djgpp_asm_named_section): Add propotype of new procedure
572
573         * config/i386/xm-djgpp.h (NATIVE_SYSTEM_HEADER_DIR): Define.
574         (MD_EXEC_PREFIX): Define (moved from config/i386/djgpp.h).
575         (STANDARD_STARTFILE_PREFIX_1): Define (moved from MD_STARTFILE_PREFIX in config/i386/djgpp.h).
576         (STANDARD_STARTFILE_PREFIX_2): Define identical to STANDARD_STARTFILE_PREFIX_1.
577         (LOCAL_INCLUDE_DIR): Define (moved from config/i386/djgpp.h).
578         (GCC_DRIVER_HOST_INITIALIZATION): Fix reporting fatal installation errors.
579         (MAX_OFILE_ALIGNMENT): Define to 128.
580         (HAVE_FTW_H): Undefine as DJGPP do not have nftw, but have ftw.h.
581
582         * config/i386/djgpp.c: New file. Add implementation of i386_djgpp_asm_named_section.
583
584         * config/i386/djgpp.opt: Remove obsolete option -mbnu210.
585
586         * config/i386/t-djgpp: New file. Add djgpp.o to EXTRA_OBJS.
587         Add rule for building djgpp.o.
588
589 2016-01-11  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
590
591         * config/rs6000/rs6000.c (v2df_reduction_p): New function.
592         (rtx_is_swappable_p): Reductions are swappable.
593         (insn_is_swappable_p): V2DF reductions are swappable.
594
595 2016-01-11  John David Anglin  <danglin@gcc.gnu.org>
596
597         * config/pa/pa.c (pa_emit_move_sequence): Handle floating point
598         reloads for other unsupported memory operands.
599
600 2016-01-12  Kugan Vivekanandarajah  <kuganv@linaro.org>
601             Jim Wilson  <jim.wilson@linaro.org>
602
603         PR target/69194
604         * config/arm/arm-builtins.c (arm_expand_neon_args): Call
605         copy_to_mode_reg instead of force_reg.
606
607 2016-01-11  H.J. Lu  <hongjiu.lu@intel.com>
608
609         PR target/69225
610         * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): Set to 2 only if
611         TARGET_80387 is true.
612
613 2016-01-11  Jakub Jelinek  <jakub@redhat.com>
614
615         PR target/69071
616         * lra-eliminations.c (move_plus_up): Only move plus up
617         if subreg of the constant can be simplified into constant
618         and use the simplified subreg of the constant instead of
619         the original constant.
620
621         * fold-const.c (fold_convertible_p): Don't return true
622         for conversion of VECTOR_TYPE to same sized integral type.
623         (fold_convert_loc): Fix up formatting.  Fold conversion of
624         VECTOR_TYPE to same sized integral type using VIEW_CONVERT_EXPR
625         instead of NOP_EXPR.
626
627         PR tree-optimization/69214
628         * tree-vrp.c (simplify_cond_using_ranges): Don't propagate
629         innerop into a comparison if SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
630         Formatting fix.
631
632         PR tree-optimization/69207
633         * tree-vect-slp.c (vect_get_constant_vectors): For
634         VECTOR_BOOLEAN_TYPE_P, assert op has integral type instead of
635         fold_convertible_p to vector_type's element type, and always
636         use VCE for non-VECTOR_BOOLEAN_TYPE_P.
637
638 2016-01-11  Richard Biener  <rguenther@suse.de>
639
640         PR tree-optimization/69173
641         * tree-vect-loop.c (vect_fixup_scalar_cycles_with_patterns): Only
642         fixup the cycle if all stmts are in a pattern.
643
644 2016-01-11  Uros Bizjak  <ubizjak@gmail.com>
645
646         PR middle-end/68999
647         * alias.c (base_alias_check): Move check for addresses with
648         alignment ANDs before the call for compare_base_decls.
649         (memrefs_conflict_p): Return -1 for different decls
650         that went through alignment adjustments.
651
652 2016-01-11  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
653
654         PR rtl-optimization/68796
655         * config/aarch64/aarch64.md (*and<mode>_compare0): New pattern.
656         * config/aarch64/aarch64.c (aarch64_select_cc_mode): Handle HImode
657         and QImode comparisons against zero with CC_NZmode.
658         * config/aarch64/iterators.md (short_mask): New mode_attr.
659
660 2016-01-11  H.J. Lu  <hongjiu.lu@intel.com>
661
662         * config/i386/sse.md (<avx512>_load<mode>_mask): Remove snprintf.
663         (<avx512>_store<mode>_mask): Likewise.
664
665 2016-01-11  Bernd Schmidt  <bschmidt@redhat.com>
666             Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
667
668         PR rtl-optimization/68841
669         * ifcvt.c (struct noce_if_info): Add orig_x field.
670         (bbs_ok_for_cmove_arith): Add to_rename parameter.
671         Don't record conflicts on to_rename if it's present.
672         Allow memory destinations in sets.
673         (noce_try_cmove_arith): Call bbs_ok_for_cmove_arith even on simple
674         blocks, passing orig_x to the checks.
675         (noce_process_if_block): Set if_info->orig_x appropriately.
676
677 2016-01-11  Tom de Vries  <tom@codesourcery.com>
678
679         PR tree-optimization/69069
680         * tree-parloops.c (create_parallel_loop): Add missing phi args.
681
682 2016-01-11  Yuri Rumyantsev  <ysrumyan@gmail.com>
683
684         PR rtl-optimization/68920
685         * config/i386/i386.c (ix86_option_override_internal): Restrict number
686         of conditional moves for  RTL if-conversion to 1 for
687         TARGET_ONE_IF_CONV_INSN.
688         * config/i386/i386.h (TARGET_ONE_IF_CONV_INSN): New macros.
689         * config/i386/x86-tune.def (X86_TUNE_ONE_IF_CONV_INSN): New macros.
690         * params.def (PARAM_MAX_RTL_IF_CONVERSION_INSNS) : Introduce new
691         parameter to restirct number of conditional moves for
692         RTL if-conversion.
693         * doc/invoke.texi (max-rtl-if-conversion-insns): Document it.
694         * ifcvt.c (bb_ok_for_noce_convert_multiple_sets): Limit number of
695         conditionl moves.
696
697 2016-01-11  Alexandre Oliva  <aoliva@redhat.com>
698
699         PR bootstrap/69123
700         * var-tracking.c (drop_overlapping_mem_locs): Operate on all
701         onepart vars.  Fix typo in comment.  Fix reversed condition in
702         unshare test.
703         (dataflow_set_remove_mem_locs): Operate on all onepart vars.
704
705         PR bootstrap/69123
706         * var-tracking.c (dump_onepart_variable_differences): New.
707         (dataflow_set_different): If a detailed dump is requested,
708         delay early returns and dump differences between onepart
709         variables present before and after, and added variables.
710
711 2016-01-11  Ilya Enkovich  <enkovich.gnu@gmail.com>
712
713         PR target/69010
714         * expr.c (expand_expr_real_1): For boolean vector constants
715         with a scalar mode use const_scalar_mask_from_tree.
716         (const_scalar_mask_from_tree): New.
717         * optabs.c (expand_vec_cond_mask_expr): Use mask mode
718         assigned to a mask type to handle constants.
719
720 2016-01-11  Martin Jambor  <mjambor@suse.cz>
721
722         PR ipa/69044
723         * ipa-cp.c (estimate_local_effects): Do not clone for removal of
724         useless parameters if we cannot change function signature.
725
726 2016-01-11  Martin Jambor  <mjambor@suse.cz>
727
728         PR ipa/66616
729         * cgraphclones.c (duplicate_thunk_for_node): Copy can_change_signature
730         flag.
731
732 2016-01-11  Tom de Vries  <tom@codesourcery.com>
733
734         PR tree-optimization/69109
735         * tree-parloops.c (try_transform_to_exit_first_loop_alt): Don't allow
736         latch with phi.
737
738 2016-01-11  Tom de Vries  <tom@codesourcery.com>
739
740         PR tree-optimization/69108
741         * tree-parloops.c (gather_scalar_reductions): Handle case that outer phi
742         res is not used in a phi.
743
744 2016-01-11  Yury Gribov  <y.gribov@samsung.com>
745
746         PR 67425
747         * common.opt (frandom-seed): Fix parameter name.
748         * doc/invoke.texi (frandom-seed): Ditto and describe parameter.
749
750 2016-01-11  Tom de Vries  <tom@codesourcery.com>
751
752         PR tree-optimization/69058
753         * tree-parloops.c (pass_parallelize_loops::execute): Return 0 if libgomp
754         not supported.
755
756 2016-01-11  Andrew Burgess  <andrew.burgess@embecosm.com>
757
758         * config/arc/arc.opt (mdiv-rem): Add period to the end.
759         (mcode-density): Likewise.
760
761 2016-01-10  Tom de Vries  <tom@codesourcery.com>
762
763         PR tree-optimization/69062
764         * tree-parloops.c (loop_has_phi_with_address_arg): New function.
765         (parallelize_loops): Don't paralelize loop that has phi with address
766         arg.
767
768 2016-01-10  Tom de Vries  <tom@codesourcery.com>
769
770         PR tree-optimization/69039
771         * tree-parloops.c (try_create_reduction_list): Only allow single exit
772         phi for reduction.
773
774 2016-01-09  John David Anglin  <danglin@gcc.gnu.org>
775
776         PR middle-end/68743
777         * match.pd: Require target has function_c99_misc before doing
778         truncl(extend(x)) and trunc(extend(x)) -> extend(truncf(x)), etc.
779         
780 2016-01-09  Gerald Pfeifer  <gerald@pfeifer.com>
781
782         * configure.ac (isl_options_set_schedule_serialize_sccs): Also 
783         use GMPINC.
784         * configure: Regenerate.
785
786 2016-01-09  Jakub Jelinek  <jakub@redhat.com>
787
788         PR middle-end/50865
789         PR tree-optimization/69097
790         * fold-const.h (expr_not_equal_to): New prototype.
791         * fold-const.c: Include stringpool.h and tree-ssanames.h.
792         (expr_not_equal_to): New function.
793         * match.pd (X % -Y is the same as X % Y): Don't optimize
794         unless X is known not to be equal to minimum or Y is known
795         not to be equal to -1.
796         * tree-vrp.c (simplify_div_or_mod_using_ranges): Add GSI argument.
797         fold TRUNC_MOD_EXPR if the second argument is not a power of two.
798         (simplify_stmt_using_ranges): Adjust caller.
799         (vrp_finalize): Call set_value_range on SSA_NAMEs before calling
800         substitute_and_fold.
801
802 2016-01-09  Jan Hubicka  <hubicka@ucw.cz>
803
804         * ipa-icf.c (sem_item_optimizer::merge_classes): Do not ICE on VAR_DECL
805         w/o DECL_NAME.
806
807 2016-01-08  Jakub Jelinek  <jakub@redhat.com>
808
809         PR tree-optimization/69167
810         * gimple-fold.c (replace_stmt_with_simplification): Also punt if
811         new SSA_NAME_OCCURS_IN_ABNORMAL_PHI SSA_NAMEs appear in operands of
812         ops[0] comparison.
813         * gimple-match-head.c (maybe_push_res_to_seq): Likewise.
814
815 2016-01-08  Alan Lawrence  <alan.lawrence@arm.com>
816             Richard Biener  <rguenther@suse.de>
817
818         PR tree-optimization/68707
819         * tree-vect-slp.c (vect_analyze_slp_instance): Cancel permuted SLP
820         instances that can be handled via vect_load_lanes.
821
822 2016-01-08  Uros Bizjak  <ubizjak@gmail.com>
823
824         * symtab.c (symtab_node::equal_address_to): Return -1 instead of 2
825         if we can't determine address equivalence.
826         * alias.c (compare_base_decl): Update for changed return value of
827         symtab_node::equal_address_to.
828
829 2016-01-08  Jason Merrill  <jason@redhat.com>
830
831         PR c++/68983
832         PR c++/67557
833         * function.c (assign_temp): Guard against TREE_ADDRESSABLE types here.
834         * expr.c (store_field): Not here.
835         * tree-cfgcleanup.c (fixup_noreturn_call): Don't clear LHS of a
836         call with TREE_ADDRESSABLE type.
837         * tree-cfg.c (verify_gimple_call): Adjust.
838
839 2016-01-08  Olivier Hainque  <hainque@adacore.com>
840
841         * config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
842         libc_internal.
843
844 2016-01-08  Alan Lawrence  <alan.lawrence@arm.com>
845
846         * gcc.target/rs6000/paired.md (reduc_smax_v2sf): Rename to...
847         (reduc_smax_scal_v2sf): ...here, make result SFmode, extract element.
848         (reduc_smin_v2sf): Rename to...
849         (reduc_smin_scal_v2sf): ...here, make result SFmode, extract element.
850         (reduc_splus_v2sf): Rename to...
851         (reduc_plus_scal_v2sf): ...here, make result SFmode, extract element.
852
853 2016-01-08  Jakub Jelinek  <jakub@redhat.com>
854
855         PR tree-optimization/69162
856         * gimplify.c (gimplify_va_arg_expr): Encode original type of
857         valist argument in another argument.
858         (gimplify_modify_expr): Adjust for the above change.  Cleanup.
859         * tree-stdarg.c (expand_ifn_va_arg_1): Use new 3rd argument
860         to determine the va_list type, build a MEM_REF instead of
861         build_fold_indirect_ref.
862
863         PR tree-optimization/69172
864         * gimple-fold.c (gimple_fold_builtin_memory_chk): Pass type to
865         gimple_build.
866
867 2016-01-08  Thomas Preud'homme  <thomas.preudhomme@arm.com>
868
869         PR tree-optimization/67781
870         * tree-ssa-math-opts.c (find_bswap_or_nop): Zero out bytes in cmpxchg
871         and cmpnop in two steps: first the ones not accessed in original
872         gimple expression in a endian independent way and then the ones not
873         accessed in the final result in an endian-specific way.
874
875 2016-01-08  Jakub Jelinek  <jakub@redhat.com>
876
877         PR tree-optimization/69083
878         * tree-vect-slp.c (vect_get_constant_vectors): For
879         VECTOR_BOOLEAN_TYPE_P assert op is fold_convertible_p to vector_type's
880         element type.  If op is fold_convertible_p to vector_type's element
881         type, use NOP_EXPR instead of VCE.
882
883 2016-01-08  Segher Boessenkool  <segher@kernel.crashing.org>
884
885         PR rtl-optimization/67778
886         PR rtl-optimization/68634
887         PR rtl-optimization/68909
888         * shrink-wrap.c (try_shrink_wrapping): Add comment.  Don't pop
889         block from the stack until done with it.  Remove a superfluous
890         bitmap set.  Remove a superfluous bitmap test.
891
892 2016-01-07  Martin Sebor  <msebor@redhat.com>
893
894         PR c/68966
895         * doc/extend.texi (__atomic Builtins, __sync Builtins): Document
896         constraint on the type of arguments.
897
898 2016-01-07  Andreas Tobler  <andreast@gcc.gnu.org>
899
900         * config/arm/freebsd.h: Rename SUBTARGET_OVERRIDE_OPTIONS to
901         SUBTARGET_OVERRIDE_INTERNAL_OPTIONS. Adjust to check
902         unaligned_access on the gcc_options set.
903         * config/arm/arm.c (arm_option_override_internal): Use
904         SUBTARGET_OVERRIDE_INTERNAL_OPTIONS.
905
906 2016-01-07  Uros Bizjak  <ubizjak@gmail.com>
907
908         PR target/69140
909         * config/i386/i386.c (ix86_frame_pointer_required): Enable
910         frame pointer for TARGET_64BIT_MS_ABI when stack is misaligned.
911
912 2016-01-07  Uros Bizjak  <ubizjak@gmail.com>
913
914         Revert
915         2016-01-06  Uros Bizjak  <ubizjak@gmail.com>
916
917         PR target/69140
918         * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
919         depending on frame_pointer_needed before remaining integer and SSE
920         registers are saved.
921
922 2016-01-07  Sandra Loosemore  <sandra@codesourcery.com>
923
924         PR 1078
925         * doc/extend.texi (Nvidia PDX Function Attributes): New section.
926
927 2016-01-07  H.J. Lu  <hongjiu.lu@intel.com>
928
929         PR target/69171
930         * config/i386/sse.md (<sse>_sqrt<mode>2<mask_name><round_name>):
931         Use the "xBm" constraint.
932         (float<sseintvecmodelower><mode>2<mask_name><round_name):
933         Likewise.
934         (sse_cvtsi2ss<round_name>): Use round_nimm_scalar_predicate.
935         (sse_cvtsi2ssq<round_name>): Likewise.
936         (sse_cvtss2si<round_name>): Likewise.
937         (sse_cvtss2siq<round_name>): Likewise.
938         (sse2_cvtsi2sdq<round_name>): Likewise.
939         (sse2_cvtsd2si<round_name>): Likewise.
940         (sse2_cvtsd2siq<round_name>): Likewise.
941         * config/i386/subst.md (round_nimm_scalar_predicate): New
942         predicate.
943
944 2015-12-15  Bernd Schmidt  <bschmidt@redhat.com>
945
946         PR middle-end/67639
947         * varasm.c (make_decl_rtl): Mark invalid register vars as
948         DECL_EXTERNAL.
949
950         PR rtl-optimization/66206
951         * bt-load.c (find_btr_use): Change first arg to be a pointer to an rtx.
952         All callers changed.
953
954 2016-01-07  Jakub Jelinek  <jakub@redhat.com>
955
956         PR tree-optimization/69141
957         * tree-ssa-pre.c: Include langhooks.h.
958         (eliminate_dom_walker::before_dom_children): Use
959         lang_hooks.decl_printable_name instead of
960         cgraph_node::get ()->name ().
961
962         PR middle-end/68960
963         * gimple-expr.c (copy_var_decl): If var has DECL_USER_ALIGN set, copy
964         it and DECL_ALIGN too.
965
966 2016-01-06  Robert Suchanek  <robert.suchanek@imgtec.com>
967
968         * config/mips/mips-ftypes.def: Sort to lexicographical order.
969
970 2016-01-06  Uros Bizjak  <ubizjak@gmail.com>
971
972         PR target/69140
973         * config/i386/i386.c (ix86_expand_prologue): Declare fs.sp_valid
974         depending on frame_pointer_needed before remaining integer and SSE
975         registers are saved.
976
977 2015-01-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
978
979         * config/rs6000/vsx.md (*p9_vecload_<mode>): Replace VSX_M
980         mode iterator with VSX_M2.
981         (*p9_vecstore_<mode>): Likewise.
982         (*vsx_le_permute_<mode>): Restrict to !TARGET_P9_VECTOR.
983         (*vsx_le_perm_load_<mode> for VSX_LE_128): Likewise.
984         (*vsx_le_perm_store_<mode> for VSX_LE_128): Likewise.
985         (define_split for VSX_LE128 stores): Likewise.
986         (define_peephole2 for TImode LE swaps): Likewise.
987         (define_split for VSX_LE128 post-reload stores): Likewise.
988
989 2016-01-06  Marek Polacek  <polacek@redhat.com>
990
991         PR sanitizer/69099
992         * convert.c (convert_to_integer_1): Adjust call to
993         ubsan_instrument_float_cast.  Use NULL_TREE instead of NULL.
994         * ubsan.c (ubsan_instrument_float_cast): Drop the ARG parameter.  Use
995         EXPR instead of ARG.
996         * ubsan.h (ubsan_instrument_float_cast): Adjust declaration.
997
998 2016-01-05  Sandra Loosemore  <sandra@codesourcery.com>
999
1000         PR 1078
1001         * doc/extend.texi (RL78 Variable Attributes): New section.
1002
1003 2016-01-05  Marek Polacek  <polacek@redhat.com>
1004
1005         PR c/69104
1006         * builtins.c (get_memmodel): Use expansion point location rather than
1007         the input location.  Call warning_at rather than warning.
1008         (expand_builtin_atomic_compare_exchange): Likewise.
1009         (expand_builtin_atomic_load): Likewise.
1010         (expand_builtin_atomic_store): Likewise.
1011         (expand_builtin_atomic_clear): Likewise.
1012
1013 2016-01-05  H.J. Lu  <hongjiu.lu@intel.com>
1014
1015         PR target/68991
1016         * config/i386/i386.c (ix86_expand_vector_logical_operator):
1017         Replace nonimmediate_operand with vector_operand.
1018         * config/i386/predicates.md (vector_operand): New predicate.
1019         (general_vector_operand): Replace nonimmediate_operand with
1020         vector_operand.
1021         * config/i386/sse.md: Replace nonimmediate_operand with
1022         vector_operand and m constraint with Bm constraint on SSE
1023         patterns with 16-byte memory operand.
1024         * config/i386/subst.md (round_nimm_predicate): Replace
1025         nonimmediate_operand with vector_operand.
1026         (round_saeonly_nimm_predicate): Likewise.
1027         (round_saeonly_nimm_scalar_predicate): New.
1028
1029 2016-01-05  H.J. Lu  <hongjiu.lu@intel.com>
1030
1031         PR target/68991
1032         * config/i386/constraints.md (Bm): New constraint.
1033         * config/i386/predicates.md (vector_memory_operand): New
1034         predicate.
1035         * config/i386/sse.md: Replace xm with xBm in plusminus and
1036         any_logic patterns.
1037
1038 2016-01-05  Sandra Loosemore  <sandra@codesourcery.com>
1039
1040         PR 1078
1041         * doc/extend.texi (V850 Function Attributes): New section.
1042         (V850 Variable Attributes): New section.
1043
1044 2016-01-05  Sandra Loosemore  <sandra@codesourcery.com>
1045
1046         PR 1078
1047         * doc/extend.texi (MicroBlaze Function Attributes): Document
1048         interrupt_handler and fast_interrupt attributes.
1049
1050 2016-01-05  Sergei Trofimovich  <siarheit@google.com>
1051
1052         PR other/60465
1053         * config/ia64/ia64.c (ia64_expand_load_address): Use gprel64
1054         for local symbolic operands.
1055         * config/ia64/predicates.md (local_symbolic_operand64): New
1056         predicate.
1057
1058 2016-01-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
1059
1060         PR rtl-optimization/68651
1061         * combine.c (combine_simplify_rtx): Canonicalize x + x into
1062         x << 1.
1063
1064 2016-01-05  Nathan Sidwell  <nathan@acm.org>
1065
1066         * alias.c (compare_base_decls): Use symtab_node::get.
1067
1068 2016-01-05  Nick Clifton  <nickc@redhat.com>
1069
1070         PR target/68770
1071         * ira-costs.c (copy_cost): Initialise the t_icode field of the
1072         secondary_reload_info structure.
1073
1074         PR target/66655
1075         * config/i386/cygming.h (MAKE_DECL_ONE_ONLY): Define to use weak
1076         decls if weak support is available.
1077
1078 2016-01-04  Martin Sebor  <msebor@redhat.com>
1079
1080         * doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.
1081
1082 2016-01-04  Michael Meissner  <meissner@linux.vnet.ibm.com>
1083
1084         * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add
1085         OPTION_MASK_P9_DFORM.
1086
1087         * config/rs6000/constraints.md (wo constraint): New constraint for
1088         ISA 3.0 (power9).
1089
1090         * config/rs6000/rs6000.c (rs6000_debug_reg_global): Add support
1091         for wo constraint.
1092         (rs6000_init_hard_regno_mode_ok): Likewise.
1093
1094         * config/rs6000/rs6000.h (r6000_reg_class_enum): Add support for
1095         wo constraint.
1096
1097         * config/rs6000/altivec.md (altivec_vperm_<mode>): Clean up vperm
1098         expanders not to have constraints.  Add support for ISA 3.0 xxperm
1099         instruction.  Add support for fusing xxlor with xxperm.
1100         (altivec_vperm_<mode>_internal): Likewise.
1101         (altivec_vperm_v8hiv16qi): Likewise.
1102         (altivec_vperm_<mode>v16q): Likewise.
1103         (altivec_vperm_<mode>_uns): Likewise.
1104         (vperm_v8hiv4si): Likewise.
1105         (vperm_v16qiv8hi): Likewise.
1106
1107         * doc/md.texi (RS/6000 constraints): Document wo constraint.
1108
1109 2016-01-04  Jakub Jelinek  <jakub@redhat.com>
1110
1111         Update copyright years.
1112
1113         * gcc.c (process_command): Update copyright notice dates.
1114         * gcov-dump.c (print_version): Ditto.
1115         * gcov.c (print_version): Ditto.
1116         * gcov-tool.c (print_version): Ditto.
1117         * gengtype.c (create_file): Ditto.
1118         * doc/cpp.texi: Bump @copying's copyright year.
1119         * doc/cppinternals.texi: Ditto.
1120         * doc/gcc.texi: Ditto.
1121         * doc/gccint.texi: Ditto.
1122         * doc/gcov.texi: Ditto.
1123         * doc/install.texi: Ditto.
1124         * doc/invoke.texi: Ditto.
1125
1126 2016-01-04  Eric Botcazou  <ebotcazou@adacore.com>
1127
1128         * config/arm/arm.c (aapcs_vfp_allocate_return_reg): Treat all integer
1129         modes larger than TImode as TImode if NEON is not enabled.
1130
1131 2016-01-04  Eric Botcazou  <ebotcazou@adacore.com>
1132
1133         PR target/69100
1134         * config/sparc/sparc.h (FUNCTION_ARG_REGNO_P): Return true in 64-bit
1135         mode for %f0-%f31 only if TARGET_FPU.
1136
1137 2016-01-04  Eric Botcazou  <ebotcazou@adacore.com>
1138
1139         PR target/69072
1140         * config/sparc/sparc.c (scan_record_type): Take into account subfields
1141         to compute the PACKED_P predicate.
1142         (function_arg_record_value): Minor tweaks.
1143
1144 2016-01-04  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1145
1146         * doc/install.texi (--with-multilib-list): Describe the meaning of the
1147         option for arm*-*-* targets.
1148
1149 2016-01-03  Sandra Loosemore  <sandra@codesourcery.com>
1150
1151         * doc/extend.texi (Common Function Attributes): Move docs for
1152         MSP430-specific attributes to....
1153         (MSP430 Function Attributes): ...here.  Delete the redundant
1154         entries and copy-edit the remaining text.
1155         (MSP430 Variable Attributes): Use uniform format for index
1156         entries and add a cross-reference to the corresponding function
1157         attribute docs.
1158
1159 2016-01-03  Vladimír Čunát  <vcunat@gmail.com>
1160
1161         * doc/invoke.texi (RS/6000 and PowerPC Options): Fix
1162         -finite-math typo.
1163         (x86 Options): Likewise.
1164
1165 2016-01-01  Sandra Loosemore  <sandra@codesourcery.com>
1166
1167         PR 1078
1168
1169         * extend.texi (Common Function Attributes) <no_stack_limit>: New.
1170         * invoke.texi (Code Gen Options) <-fno-stack-limit>: Add pointer
1171         to corresponding attribute.
1172
1173 2016-01-01  Sandra Loosemore  <sandra@codesourcery.com>
1174
1175         * doc/extend.texi (Common Function Attributes) <noplt>: Move
1176         to correct alphabetization of table.  Copy-edit and correct
1177         markup.
1178         <stack_protect>: Likewise.
1179         <target_clones>: Likewise.
1180         <simd>: Likewise.
1181         * doc/invoke.texi (Optimize Options) <-fstack-protector-explicit>:
1182         Correct punctuation.
1183         (Code Gen Options) <-fno-plt>: Copy-edit.
1184
1185 2016-01-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>
1186
1187         PR target/68917
1188         * config/tilegx/tilegx.md (clzsi2): Don't create DI subregs of
1189         SI values.  Explicitly convert SI to DI and vice-versa.
1190
1191 2016-01-01  Jakub Jelinek  <jakub@redhat.com>
1192
1193         PR tree-optimization/69070
1194         * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Only test
1195         REAL_VALUE_ISSIGNALING_NAN on arg0 if arg0 is a REAL_CST.
1196
1197         PR sanitizer/69055
1198         * ubsan.c (ubsan_instrument_float_cast): Call
1199         initialize_sanitizer_builtins.
1200
1201         PR target/69015
1202         * ifcvt.c (find_cond_trap): Give up if returnjump_p (jump).
1203 \f
1204 Copyright (C) 2016 Free Software Foundation, Inc.
1205
1206 Copying and distribution of this file, with or without modification,
1207 are permitted in any medium without royalty provided the copyright
1208 notice and this notice are preserved.