diff options
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r-- | gcc/ChangeLog | 893 |
1 files changed, 877 insertions, 16 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1cf6ef600dd..2f3f91b4a03 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,864 @@ +2016-09-19 Richard Biener <rguenther@suse.de> + + * dwarf2out.c (early_dwarf_finished): New global. + (set_early_dwarf::set_early_dwarf): Assert early_dwarf_finished + is false. + (dwarf2out_early_finish): Set early_dwarf_finished at the end, + if called from LTO exit early. + (dwarf2out_late_global_decl): When being during the early + debug phase do not add locations but only const value attributes. + Adjust the way we generate early DIEs for LTO. + +2016-09-19 Richard Biener <rguenther@suse.de> + + PR middle-end/77605 + * tree-data-ref.c (analyze_subscript_affine_affine): Use the + proper niter to bound the loops. + +2016-09-19 Richard Biener <rguenther@suse.de> + + PR tree-optimization/77514 + * tree-ssa-pre.c (create_expression_by_pieces): Optimize + search for folded stmt. + +2016-09-17 Jan Hubicka <hubicka@ucw.cz> + + * passes.def (pass_early_thread_jumps): Schedule after forwprop. + * tree-pass.h (make_pass_early_thread_jumps): Declare. + * tree-ssa-threadbackward.c (fsm_find_thread_path, + fsm_find_thread_path, profitable_jump_thread_path, + fsm_find_control_statement_thread_paths, + find_jump_threads_backwards): Add speed_p parameter. + (pass_data_early_thread_jumps): New pass. + (make_pass_early_thread_jumps): New function. + +2016-09-17 Andreas Schwab <schwab@suse.de> + + * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): Add cast. + * config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Likewise. + +2016-09-16 Eric Botcazou <ebotcazou@adacore.com> + + * recog.c (rest_of_handle_split_after_reload): Delete. + (pass_split_after_reload::gate): New method. + (pass_split_after_reload::execute): Call split_all_insns directly. + +2016-09-16 Jonathan Wakely <jwakely@redhat.com> + + * doc/extend.texi (Integer Overflow Builtins): Fix type of out + parameters for functions taking long long arguments. + +2016-09-16 Bill Schmidt <wschmidt@linux.vnet.ibm.com> + + PR target/77613 + * config/rs6000/rs6000.c (rtx_is_swappable_p): Add support for + splat with truncate. + +2016-09-16 Jason Merrill <jason@redhat.com> + + * hwint.h (least_bit_hwi, pow2_or_zerop, pow2p_hwi, ctz_or_zero): + New. + * hwint.c (exact_log2): Use pow2p_hwi. + (ctz_hwi, ffs_hwi): Use least_bit_hwi. + * alias.c (memrefs_conflict_p): Use pow2_or_zerop. + * builtins.c (get_object_alignment_2, get_object_alignment) + (get_pointer_alignment, fold_builtin_atomic_always_lock_free): Use + least_bit_hwi. + * calls.c (compute_argument_addresses, store_one_arg): Use + least_bit_hwi. + * cfgexpand.c (expand_one_stack_var_at): Use least_bit_hwi. + * combine.c (force_to_mode): Use least_bit_hwi. + (contains_muldiv, find_split_point, combine_simplify_rtx) + (simplify_if_then_else, simplify_set, force_to_mode) + (if_then_else_cond, simplify_and_const_int_1) + (simplify_compare_const): Use pow2p_hwi. + * cse.c (fold_rtx): Use pow2p_hwi. + * emit-rtl.c (set_mem_attributes_minus_bitpos, adjust_address_1): + Use least_bit_hwi. + * expmed.c (synth_mult, expand_divmod): Use ctz_or_zero, ctz_hwi. + (init_expmed_one_conv): Use pow2p_hwi. + * expr.c (is_aligning_offset): Use pow2p_hwi. + * fold-const.c (round_up_loc, round_down_loc): Use pow2_or_zerop. + (fold_binary_loc): Use pow2p_hwi. + * function.c (assign_parm_find_stack_rtl): Use least_bit_hwi. + * gimple-fold.c (gimple_fold_builtin_memory_op): Use pow2p_hwi. + * gimple-ssa-strength-reduction.c (replace_ref): Use least_bit_hwi. + * hsa-gen.c (gen_hsa_addr_with_align, hsa_bitmemref_alignment): + Use least_bit_hwi. + * ifcvt.c (noce_try_store_flag_constants): Use pow2p_hwi. + * ipa-cp.c (ipcp_alignment_lattice::meet_with_1): Use least_bit_hwi. + * ipa-prop.c (ipa_modify_call_arguments): Use least_bit_hwi. + * omp-low.c (oacc_loop_fixed_partitions) + (oacc_loop_auto_partitions): Use least_bit_hwi. + * rtlanal.c (nonzero_bits1): Use ctz_or_zero. + * stor-layout.c (place_field): Use least_bit_hwi. + * tree-pretty-print.c (dump_generic_node): Use pow2p_hwi. + * tree-sra.c (build_ref_for_offset): Use least_bit_hwi. + * tree-ssa-ccp.c (ccp_finalize): Use least_bit_hwi. + * tree-ssa-math-opts.c (bswap_replace): Use least_bit_hwi. + * tree-ssa-strlen.c (handle_builtin_memcmp): Use pow2p_hwi. + * tree-vect-data-refs.c (vect_analyze_group_access_1) + (vect_grouped_store_supported, vect_grouped_load_supported) + (vect_permute_load_chain, vect_shift_permute_load_chain) + (vect_transform_grouped_load): Use pow2p_hwi. + * tree-vect-generic.c (expand_vector_divmod): Use ctz_or_zero. + * tree-vect-patterns.c (vect_recog_divmod_pattern): Use ctz_or_zero. + * tree-vect-stmts.c (vectorizable_mask_load_store): Use + least_bit_hwi. + * tsan.c (instrument_expr): Use least_bit_hwi. + * var-tracking.c (negative_power_of_two_p): Use pow2_or_zerop. + +2016-09-16 Andreas Schwab <schwab@suse.de> + + * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): Use parameter + OFFSET, not offset. + * config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Likewise. + +2016-09-16 Jakub Jelinek <jakub@redhat.com> + + PR target/77526 + * combine.c (rest_of_handle_combine): If any edges have been purged, + free dominators if available. + +2016-09-16 Jakub Jelinek <jakub@redhat.com> + Eric Botcazou <ebotcazou@adacore.com> + + PR middle-end/77594 + * internal-fn.c (expand_arith_overflow) <case MINUS_EXPR>: Don't fall + through into expand_addsub_overflow after expand_neg_overflow. + +2016-09-15 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-show-locus.c + (selftest::test_fixit_insert_containing_newline): New function. + (selftest::test_fixit_replace_containing_newline): New function. + (selftest::diagnostic_show_locus_c_tests): Call the above. + +2016-09-15 Bin Cheng <bin.cheng@arm.com> + + PR tree-optimization/77503 + * tree-vect-loop.c (vectorizable_reduction): Record reduction + code for CONST_COND_REDUCTION at analysis stage and use it at + transform stage. + * tree-vectorizer.h (struct _stmt_vec_info): New field. + (STMT_VINFO_VEC_CONST_COND_REDUC_CODE): New macro. + * tree-vect-stmts.c (new_stmt_vec_info): Initialize above new + field. + +2016-09-15 Richard Biener <rguenther@suse.de> + + PR middle-end/77544 + * fold-const.c (split_tree): Do not split constant ~X. + +2016-09-15 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/77425 + * sched-int.h (sd_iterator_cond): Don't update it_ptr->linkp if list + is NULL. + + PR middle-end/77475 + * config/i386/i386.c (ix86_parse_stringop_strategy_string): Simplify, + use %qs instead of %s where desirable, use argument instead of arg in + the diagnostic wording, add list of supported strategies and + spellcheck hint. + (ix86_option_override_internal): Emit target("m...") instead of + option("m...") in the diagnostic. Use %qs instead of %s in invalid + -march/-mtune option diagnostic. Add list of supported arches/tunings + and spellcheck hint. Remove prefix, suffix and sw variables, use + main_args_p ? "..." : "..." in diagnostics to make translation + possible. + +2016-09-15 Richard Biener <rguenther@suse.de> + + * dwarf2asm.h (dw2_asm_output_offset): Add overload with + extra offset argument. + * dwarf2asm.c (dw2_asm_output_offset): Implement that. + * doc/tm.texi.in (ASM_OUTPUT_DWARF_OFFSET): Adjust documentation + to reflect new offset parameter. + * doc/tm.texi: Regenerate. + * config/darwin.h (ASM_OUTPUT_DWARF_OFFSET): Adjust. + * config/darwin-protos.h (darwin_asm_output_dwarf_delta): Add + offset argument. + (darwin_asm_output_dwarf_offset): Likewise. + * config/darwin.c (darwin_asm_output_dwarf_delta): Add offset + argument. + (darwin_asm_output_dwarf_offset): Pass offset argument through. + * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): Adjust. + * config/i386/cygmin.h (ASM_OUTPUT_DWARF_OFFSET): Likewise. + +2016-09-15 Chung-Lin Tang <cltang@codesourcery.com> + + PR fortran/72743 + * ipa-icf.c (set_alias_uids): New function. + (sem_variable::merge): Use set_alias_uids to set DECL_PT_UID of + all the merged variable's referring aliases. + +2016-09-15 Richard Biener <rguenther@suse.de> + + PR tree-optimization/77514 + * tree-ssa-pre.c (create_expression_by_pieces): Handle garbage + only forced_stmts sequence. + +2016-09-15 Kugan Vivekanandarajah <kuganv@linaro.org> + + * tree-ssanames.h (FOR_EACH_SSA_NAME): New. + * cfgexpand.c (update_alias_info_with_stack_vars): Use + FOR_EACH_SSA_NAME to iterate over SSA variables. + (pass_expand::execute): Likewise. + * omp-simd-clone.c (ipa_simd_modify_function_body): Likewise. + * tree-cfg.c (dump_function_to_file): Likewise. + * tree-into-ssa.c (pass_build_ssa::execute): Likewise. + (update_ssa): Likewise. + * tree-ssa-alias.c (dump_alias_info): Likewise. + * tree-ssa-ccp.c (ccp_finalize): Likewise. + * tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise. + (create_outofssa_var_map): Likewise. + (coalesce_ssa_name): Likewise. + * tree-ssa-operands.c (dump_immediate_uses): Likewise. + * tree-ssa-pre.c (compute_avail): Likewise. + * tree-ssa-sccvn.c (init_scc_vn): Likewise. + (scc_vn_restore_ssa_info): Likewise. + (free_scc_vn): Likwise. + (run_scc_vn): Likewise. + * tree-ssa-structalias.c (compute_points_to_sets): Likewise. + * tree-ssa-ter.c (new_temp_expr_table): Likewise. + * tree-ssa-copy.c (fini_copy_prop): Likewise. + * tree-ssa.c (verify_ssa): Likewise. + +2016-09-14 Matthew Fortune <matthew.fortune@imgtec.com> + + * config.gcc (mips*-mti-elf*, mips*-mti-linux*): Set mips32r2 + and mips64r2 as default 32-bit and 64-bit architectures. + (mips*-img-elf*, mips*-img-linux*): Set mips32r6 and mips64r6 + as default 32-bit and 64-bit architectures. + +2016-09-14 Pat Haugen <pthaugen@us.ibm.com> + + * loop-unroll.c (unroll_loop_runtime_iterations): Set probability of succ edge. + +2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> + + * target.def (lra_p): Change commentary (for the manual) for the + new default. + * doc/tm.texi: Regenerate. + +2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> + + * config/aarch64/aarch64.c (TARGET_LRA_P): Delete macro. + * config/arm/arm.c (TARGET_LRA_P): Delete macro. + * config/i386/i386.c (TARGET_LRA_P): Delete macro. + * config/nds32/nds32.c (TARGET_LRA_P): Delete macro. + +2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> + + * targhooks.c (default_lra_p): Return true instead of false. + +2016-09-14 Segher Boessenkool <segher@kernel.crashing.org> + + * config/alpha/alpha.c (TARGET_LRA_P): New macro, defined to + hook_bool_void_false. + * config/avr/avr.c: Ditto. + * config/bfin/bfin.c: Ditto. + * config/c6x/c6x.c: Ditto. + * config/cr16/cr16.c: Ditto. + * config/cris/cris.c: Ditto. + * config/epiphany/epiphany.c: Ditto. + * config/fr30/fr30.c: Ditto. + * config/frv/frv.c: Ditto. + * config/h8300/h8300.c: Ditto. + * config/ia64/ia64.c: Ditto. + * config/iq2000/iq2000.c: Ditto. + * config/lm32/lm32.c: Ditto. + * config/m32c/m32c.c: Ditto. + * config/m32r/m32r.c: Ditto. + * config/m68k/m68k.c: Ditto. + * config/mcore/mcore.c: Ditto. + * config/microblaze/microblaze.c: Ditto. + * config/mmix/mmix.c: Ditto. + * config/mn10300/mn10300.c: Ditto. + * config/moxie/moxie.c: Ditto. + * config/msp430/msp430.c: Ditto. + * config/nios2/nios2.c: Ditto. + * config/nvptx/nvptx.c: Ditto. + * config/pa/pa.c: Ditto. + * config/pdp11/pdp11.c: Ditto. + * config/rl78/rl78.c: Ditto. + * config/sparc/sparc.c: Ditto. + * config/spu/spu.c: Ditto. + * config/stormy16/stormy16.c: Ditto. + * config/tilegx/tilegx.c: Ditto. + * config/tilepro/tilepro.c: Ditto. + * config/v850/v850.c: Ditto. + * config/vax/vax.c: Ditto. + * config/visium/visium.c: Ditto. + * config/xtensa/xtensa.c: Ditto. + +2016-09-14 Jakub Jelinek <jakub@redhat.com> + + PR sanitizer/68260 + * tsan.c: Include target.h. + (enum tsan_atomic_action): Add bool_clear and bool_test_and_set. + (BOOL_CLEAR, BOOL_TEST_AND_SET): Define. + (tsan_atomic_table): Add BUILT_IN_ATOMIC_CLEAR and + BUILT_IN_ATOMIC_TEST_AND_SET entries. + (instrument_builtin_call): Handle bool_clear and bool_test_and_set. + +2016-09-14 Bernd Edlinger <bernd.edlinger@hotmail.de> + Martin Liska <mliska@suse.cz> + + PR middle-end/77574 + * predict.c (force_edge_cold): Add braces to a condition. + +2016-09-13 Bernd Edlinger <bernd.edlinger@hotmail.de> + + PR rtl-optimization/77289 + * lra-constraints.c (get_final_hard_regno): Removed. + (get_hard_regno): Add new parameter final_p. + (get_reg_class): Directly call lra_get_elimination_hard_regno. + (operands_match_p): Adjust call to get_hard_regno. + (uses_hard_regs_p): Likewise. + (process_alt_operands): Likewise. + +2016-09-13 Joe Seymour <joe.s@somniumtech.com> + + PR target/70713 + * config/msp430/msp430.c (msp430_start_function): Emit an error + if a function is both weak and specifies an interrupt number. + +2016-09-13 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/77454 + * tree-ssa-dom.c (optimize_stmt): Set modified flag on stmt after + changing GIMPLE_COND. Move update_stmt_if_modified call after this. + Formatting fix. + +2016-09-13 Tamar Christina <tamar.christina@arm.com> + + * config/aarch64/aarch64-builtins.c + (aarch64_init_simd_builtins): Fix builtin type signature printing. + +2016-09-13 Uros Bizjak <ubizjak@gmail.com> + + * config/alpha/alpha.c (alpha_pass_by_reference): Pass un-named + SFmode and SCmode arguments by reference. + +2016-09-13 David Malcolm <dmalcolm@redhat.com> + + * diagnostic-show-locus.c (selftest::test_one_liner_fixit_insert): + Rename to... + (selftest::test_one_liner_fixit_insert_before): ...this, and update + for renaming of add_fixit_insert to add_fixit_insert_before. + (selftest::test_one_liner_fixit_insert_after): New function. + (selftest::test_one_liner_fixit_validation_adhoc_locations): + Update for renaming of add_fixit_insert to add_fixit_insert_before. + (selftest::test_one_liner_many_fixits): Likewise. + (selftest::test_diagnostic_show_locus_one_liner): Update for + renaming, call new test function. + (selftest::test_diagnostic_show_locus_fixit_lines): Update for + renaming of add_fixit_insert to add_fixit_insert_before. + (selftest::test_fixit_consolidation): Likewise. + * diagnostic.c (selftest::test_print_parseable_fixits_insert): + Likewise. + * edit-context.c (selftest::test_applying_fixits_insert): Rename to... + (selftest::test_applying_fixits_insert_before): ...this. + (selftest::test_applying_fixits_insert): Update for renaming of + add_fixit_insert to add_fixit_insert_before. + (selftest::test_applying_fixits_insert_after): New function. + (selftest::test_applying_fixits_insert_after_at_line_end): New + function. + (selftest::test_applying_fixits_insert_after_failure): New function. + (selftest::test_applying_fixits_multiple): Update for renaming of + add_fixit_insert to add_fixit_insert_before. + (selftest::change_line): Likewise. + (selftest::test_applying_fixits_unreadable_file): Likewise. + (selftest::test_applying_fixits_line_out_of_range): Likewise. + (selftest::test_applying_fixits_column_validation): Likewise. + (selftest::test_applying_fixits_column_validation): Likewise. + (selftest::edit_context_c_tests): Update for renamed test function; + call new test functions. + +2016-09-13 Pat Haugen <pthaugen@us.ibm.com> + + PR tree-optimization/77536 + PR rtl-optimization/68212 + * config/rs6000/rs6000.md (div->recip splitter): Remove + optimize_insn_for_speed_p condition. + +2016-09-13 Maciej W. Rozycki <macro@imgtec.com> + + * optabs.c (prepare_cmp_insn): Update documentation comment. + +2016-09-13 Jakub Jelinek <jakub@redhat.com> + Manuel Lopez-Ibanez <manu@gcc.gnu.org> + + PR middle-end/77475 + * opts.h (candidates_list_and_hint): Declare. + * opts-common.c (candidates_list_and_hint): New function. + (cmdline_handle_error): Use it. + +2016-09-12 David Malcolm <dmalcolm@redhat.com> + + * edit-context.c (edited_line::get_len): New accessor. + (edited_file::print_diff): Split out hunk-printing into... + (edited_file::print_diff_hunk): New method. + (edited_file::print_diff_line): New method. + +2016-09-12 Andrew Pinski <apinski@cavium.com> + + * config/aarch64/aarch64-tuning-flags.def (SLOW_UNALIGNED_LDPW): + New tuning option. + * config/aarch64/aarch64.c (thunderx_tunings): Enable + AARCH64_EXTRA_TUNE_SLOW_UNALIGNED_LDPW. + (aarch64_operands_ok_for_ldpstp): Return false if + AARCH64_EXTRA_TUNE_SLOW_UNALIGNED_LDPW and the mode + was SImode and the alignment is less than 8 byte. + (aarch64_operands_adjust_ok_for_ldpstp): Likewise. + +2016-09-12 Orlando Arias <oarias@knights.ucf.edu> + + PR target/77570 + * config/msp430/msp430.md (delay_cycles_32x): Fix pushm/popm. + +2016-09-12 Marek Polacek <polacek@redhat.com> + + * doc/extend.texi: Use lowercase "boolean". + * doc/invoke.texi: Likewise. + * doc/md.texi: Likewise. + * target.def: Likewise. + * doc/tm.texi: Regenerated. + +2016-09-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + + PR middle-end/77426 + * expmed.c (synth_mult): Delete duplicate mode check. + +2016-09-10 Tom de Vries <tom@codesourcery.com> + + PR C/71602 + * builtins.c (std_canonical_va_list_type): Strictly return non-null for + va_list type only. + * config/i386/i386.c (ix86_canonical_va_list_type): Same. + * gimplify.c (gimplify_va_arg_expr): Handle &va_list. + +2016-09-09 Peter Bergner <bergner@vnet.ibm.com> + + PR rtl-optimization/77289 + * lra-constraints.c (get_final_hard_regno): Add support for non hard + register numbers. Remove support for subregs. + (get_hard_regno): Use SUBREG_P. Don't call get_final_hard_regno(). + (get_reg_class): Delete removed get_final_hard_regno() argument. + (uses_hard_regs_p): Call get_final_hard_regno(). + +2016-09-09 Martin Sebor <msebor@redhat.com> + + PR c/77520 + PR c/77521 + * pretty-print.c (pp_quoted_string): New function. + (pp_format): Call it for %c and %s directives. + +2016-09-10 Bernd Edlinger <bernd.edlinger@hotmail.de> + + * doc/tm.texi.in (INITIAL_FRAME_POINTER_OFFSET): Remove. + (ELIMINABLE_REGS, TARGET_CAN_ELIMINATE, + INITIAL_ELIMINATION_OFFSET) : Update documentation. + * target.def (frame_pointer_required, can_eliminate): Likewise. + * doc/tm.texi: Regenerated. + * builtins.c (expand_builtin_setjmp_receiver): Remove #ifdef + ELIMINABLE_REGS. + * df-scan.c (df_hard_reg_init): Likewise. + * ira.c (ira_setup_eliminable_regset): Likewise. + * lra-eliminations.c (reg_eliminate_1, (update_reg_eliminate, + init_elim_table): Likewise. + * reload1.c (reg_eliminate_1, verify_initial_elim_offsets, + set_initial_elim_offsets, update_eliminables, + init_elim_table): Likewise. + * rtlanal.c (get_initial_register_offset): Likewise. + * config/ft32/ft32.h (INITIAL_FRAME_POINTER_OFFSET): Remove. + * config/m32r/m32r.h (INITIAL_FRAME_POINTER_OFFSET): Likewise. + * config/moxie/moxie.h (INITIAL_FRAME_POINTER_OFFSET): Likewise. + * config/vax/vax.h (INITIAL_FRAME_POINTER_OFFSET): Likewise. + * config/fr30/fr30.h: Fix comment. + * config/frv/frv.c: Likewise. + * config/frv/frv.h: Likewise. + * config/ft32/ft32.h: Likewise. + * config/visium/visium.h: Likewise. + * config/pa/pa64-linux.h: Likewise. + * config/v850/v850.h: Likewise. + * config/cris/cris.c: Likewise. + * config/ia64/ia64.h: Likewise. + * config/moxie/moxie.h: Likewise. + * config/m32r/m32r.h: Likewise. + +2016-09-10 Alexander Ivchenko <alexander.ivchenko@intel.com> + + PR target/77267 + * config.in: Regenerate. + * config/i386/linux-common.h (MPX_LD_AS_NEEDED_GUARD_PUSH): + New macro. + (MPX_LD_AS_NEEDED_GUARD_PUSH): Ditto. + (LIBMPXWRAPPERS_SPEC): Remove "--no-whole-archive" from + static-libmpxwrappers case. + (LIBMPX_SPEC): Add guards with MPX_LD_AS_NEEDED_GUARD_PUSH and + MPX_LD_AS_NEEDED_GUARD_POP. + * configure: Regenerate. + * configure.ac (HAVE_LD_PUSHPOPSTATE_SUPPORT): New variable. + defined if linker support "--push-state"/"--pop-state". + +2016-09-09 Bernd Edlinger <bernd.edlinger@hotmail.de> + + * doc/cpp.texi (__*_WIDTH__): Small wording fixes. + +2016-09-09 Joseph Myers <joseph@codesourcery.com> + + * doc/cpp.texi (__SCHAR_WIDTH__, __SHRT_WIDTH__, __INT_WIDTH__) + (__LONG_WIDTH__, __LONG_LONG_WIDTH__, __PTRDIFF_WIDTH__) + (__SIG_ATOMIC_WIDTH__, __SIZE_WIDTH__, __WCHAR_WIDTH__) + (__WINT_WIDTH__, __INT_LEAST8_WIDTH__, __INT_LEAST16_WIDTH__) + (__INT_LEAST32_WIDTH__, __INT_LEAST64_WIDTH__) + (__INT_FAST8_WIDTH__, __INT_FAST16_WIDTH__, __INT_FAST32_WIDTH__) + (__INT_FAST64_WIDTH__, __INTPTR_WIDTH__, __INTMAX_WIDTH__): + Document. + * ginclude/stdint-gcc.h [__STDC_WANT_IEC_60559_BFP_EXT__]: Define + width macros from TS 18661-1. + * glimits.h [__STDC_WANT_IEC_60559_BFP_EXT__]: Likewise. + +2016-09-08 Jakub Jelinek <jakub@redhat.com> + + PR fortran/77516 + * omp-low.c (lower_rec_simd_input_clauses): Use max_vf for non-positive + OMP_CLAUSE_SAFELEN_EXPR. + +2016-09-07 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Add substring-locations.o. + * langhooks-def.h (class substring_loc): New forward decl. + (lhd_get_substring_location): New decl. + (LANG_HOOKS_GET_SUBSTRING_LOCATION): New macro. + (LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_GET_SUBSTRING_LOCATION. + * langhooks.c (lhd_get_substring_location): New function. + * langhooks.h (class substring_loc): New forward decl. + (struct lang_hooks): Add field get_substring_location. + * substring-locations.c: New file, taking definition of + format_warning_va and format_warning_at_substring from + c-family/c-format.c, making them non-static. + * substring-locations.h (class substring_loc): Move class here + from c-family/c-common.h. Add and rewrite comments. + (format_warning_va): New decl. + (format_warning_at_substring): New decl. + (get_source_location_for_substring): Add comment. + +2016-09-07 Eric Gallager <egall@gwmail.gwu.edu> + + * config/i386/i386.c: Add 'U' suffix to processor feature bits + to avoid -Wnarrowing warning. + * config/i386/x86-tune.def: Likewise for DEF_TUNE selector bitmasks. + * opts.c: Likewise for SANITIZER_OPT bitmasks. + +2016-09-07 Wilco Dijkstra <wdijkstr@arm.com> + + * config/aarch64/aarch64.c (aarch64_legitimize_address): + Avoid use of base_offset if offset already in range. + +2016-09-07 Kaz Kojima <kkojima@gcc.gnu.org> + + * config/sh/sh-protos.h (struct sh_atomic_model, + selected_atomic_model, TARGET_ATOMIC_ANY, TARGET_ATOMIC_STRICT, + TARGET_ATOMIC_SOFT_GUSA, TARGET_ATOMIC_HARD_LLCS, + TARGET_ATOMIC_SOFT_TCB, TARGET_ATOMIC_SOFT_IMASK): Move to... + * config/sh/sh.h (struct sh_atomic_model, + selected_atomic_model, TARGET_ATOMIC_ANY, TARGET_ATOMIC_STRICT, + TARGET_ATOMIC_SOFT_GUSA, TARGET_ATOMIC_HARD_LLCS, + TARGET_ATOMIC_SOFT_TCB, TARGET_ATOMIC_SOFT_IMASK): ...here. + Guard with __cplusplus. + +2016-09-06 Jakub Jelinek <jakub@redhat.com> + + PR target/69255 + * config/i386/i386.c (ix86_expand_builtin): For builtin with + unsupported or unknown ISA, use expand_call. + +2016-09-06 Martin Liska <mliska@suse.cz> + + PR gcov-profile/77378 + PR gcov-profile/77466 + * tree-profile.c (tree_profiling): Detect whether target can use + -fprofile-update=atomic. + +2016-09-06 Richard Biener <rguenther@suse.de> + + PR tree-optimization/77479 + * tree-vrp.c (update_value_range): Extend overflow handling to + VARYING. + +2016-09-05 Jakub Jelinek <jakub@redhat.com> + + PR target/77476 + * config/i386/i386.md (isa): Add x64_avx512bw. + (*zero_extendsidi2): For alternative 11 use x64_avx512bw isa. + (kmov_isa): New mode attr. + (zero_extend<mode>di2): Use <kmov_isa> isa for the last alternative. + (*zero_extend<mode>si2): Likewise. + (*zero_extendqihi2): Use avx512dq isa for the last alternative. + +2016-09-05 Gerald Pfeifer <gerald@pfeifer.com> + + * doc/invoke.texi (SPU Options): nops -> NOPs. + (x86 Options): Ditto. + +2016-09-05 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/77475 + * toplev.c (process_options): Temporarily set input_location + to UNKNOWN_LOCATION around targetm.target_option.override () call. + +2016-09-05 Uros Bizjak <ubizjak@gmail.com> + + PR rtl-optimization/77452 + * explow.c (plus_constant) <case MEM>: Extract scalar constant from + inner-mode reference to a CONST_VECTOR constant in the constant pool. + +2016-09-05 Marek Polacek <polacek@redhat.com> + + PR c/77423 + * doc/invoke.texi: Update -Wlogical-not-parentheses documentation. + +2016-09-05 Jakub Jelinek <jakub@redhat.com> + + PR other/77421 + * gensupport.c (alter_output_for_subst_insn): Remove redundant + *insn_out == '*' test. Don't copy unnecessary to yet another + memory buffer, and don't leak it. + + PR rtl-optimization/77425 + * ipa-devirt.c (get_odr_type): Set val->id unconditionally. + +2016-09-03 Kirill Yukhin <kirill.yukhin@intel.com> + + * ubsan.c (ubsan_use_new_style_p): Fix check for empty string. + +2016-09-02 David Malcolm <dmalcolm@redhat.com> + + * common.opt (fdiagnostics-generate-patch): New option. + * diagnostic.c: Include "edit-context.h". + (diagnostic_initialize): Initialize context->edit_context_ptr. + (diagnostic_finish): Delete context->edit_context_ptr. + (diagnostic_report_diagnostic): Add fix-it hints from the + diagnostic to context->edit_context_ptr, if any. + * diagnostic.h (class edit_context): Add forward decl. + (struct diagnostic_context): Add field "edit_context_ptr". + * doc/invoke.texi (Diagnostic Message Formatting Options): Add + -fdiagnostics-generate-patch. + (-fdiagnostics-generate-patch): New item. + * toplev.c: Include "edit-context.h". + (process_options): Set global_dc->edit_context_ptr to a new + edit_context if the options need one. + (toplev::main): Handle -fdiagnostics-generate-patch by using + global_dc->edit_context_ptr. + +2016-09-02 Jakub Jelinek <jakub@redhat.com> + + PR c/65467 + * gimplify.c (gimplify_adjust_omp_clauses_1): Diagnose implicit + map and firstprivate clauses on target construct for _Atomic + qualified decls. + (gimplify_adjust_omp_clauses): Diagnose explicit firstprivate clauses + on target construct for _Atomic qualified decls. + * omp-low.c (use_pointer_for_field): Return true for _Atomic qualified + decls. + * omp-simd-clone.c (simd_clone_clauses_extract): Warn and give up for + _Atomic qualified arguments not mentioned in uniform clause. + +2016-09-02 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS-libcommon): Add edit-context.o. + * diagnostic-color.c (color_dict): Add "diff-filename", + "diff-hunk", "diff-delete", and "diff-insert". + (parse_gcc_colors): Update default value of GCC_COLORS in comment + to reflect above changes. + * doc/invoke.texi (-fdiagnostics-color): Update description of + default GCC_COLORS, and of the supported capabilities. + * edit-context.c: New file. + * edit-context.h: New file. + * input.c (struct fcache): Add field "missing_trailing_newline". + (diagnostics_file_cache_forcibly_evict_file): Initialize it to + true. + (add_file_to_cache_tab): Likewise. + (fcache::fcache): Likewise. + (get_next_line): Update c->missing_trailing_newline. + (location_missing_trailing_newline): New function. + * input.h (location_missing_trailing_newline): New decl. + * selftest-run-tests.c (selftest::run_tests): Call + edit_context_c_tests. + * selftest.h (edit_context_c_tests): New decl. + +2016-09-02 Jakub Jelinek <jakub@redhat.com> + Richard Biener <rguenth@suse.de> + + PR tree-optimization/77444 + * tree-ssa-loop-ivopts.c (cand_value_at): For pointers use sizetype + as steptype, remove redundant initialization. + +2016-09-02 Jakub Jelinek <jakub@redhat.com> + + PR sanitizer/77396 + * sanopt.c: Include gimple-ssa.h, tree-phinodes.h and ssa-iterators.h. + (sanopt_optimize_walker): Optimize away + __asan_before_dynamic_init (...) followed by + __asan_after_dynamic_init () without intervening memory loads/stores. + * ipa-pure-const.c (special_builtin_state): Handle + BUILT_IN_ASAN_BEFORE_DYNAMIC_INIT and + BUILT_IN_ASAN_AFTER_DYNAMIC_INIT. + +2016-09-02 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> + + * cfg.c (free_original_copy_tables): Replace second assignment of + bb_copy = NULL by bb_original = NULL. + +2016-09-02 Jakub Jelinek <jakub@redhat.com> + + PR other/77421 + * config/i386/i386.c (ix86_expanded_args_builtin): Remove redundant + assignment added in r216794. + +2016-09-02 David Malcolm <dmalcolm@redhat.com> + + * Makefile.in (OBJS): Add typed-splay-tree.o. + * selftest-run-tests.c (selftest::run_tests): Call + typed_splay_tree_c_tests. + * selftest.h (typed_splay_tree_c_tests): New decl. + * typed-splay-tree.c: New file. + * typed-splay-tree.h (typed_splay_tree::foreach_fn): New typedef. + (typed_splay_tree::max): New method. + (typed_splay_tree::min): New method. + (typed_splay_tree::foreach): New method. + (typed_splay_tree::closure): New struct. + (typed_splay_tree::inner_foreach_fn): New function. + +2016-09-02 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> + + * ipa-cp.c (ipcp_store_bits_results): Change option name from + -fipa-cp-bit to -fipa-bit-cp. + +2016-09-01 Martin Sebor <msebor@redhat.com> + + PR tree-optimization/71831 + * tree-object-size.h: Return bool instead of the size and add + argument for the size. + * tree-object-size.c (compute_object_offset): Update signature. + (addr_object_size): Same. + (compute_builtin_object_size): Return bool instead of the size + and add argument for the size. Handle POINTER_PLUS_EXPR when + optimization is disabled. + (expr_object_size): Adjust. + (plus_stmt_object_size): Adjust. + (pass_object_sizes::execute): Adjust. + * builtins.c (fold_builtin_object_size): Adjust. + * doc/extend.texi (Object Size Checking): Update. + * ubsan.c (instrument_object_size): Adjust. + +2016-09-01 Martin Sebor <msebor@redhat.com> + + * genmatch.c (parser::parse_expr): Increase buffer size to guarantee + it fits the output of the formatted function regardless of its + arguments. + * gcc/genmodes.c (parser::parse_expr): Same. + * gimplify.c (gimplify_asm_expr): Same. + * passes.c (pass_manager::register_one_dump_file): Same. + * print-tree.c (print_node): Same. + +2016-09-01 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/altivec.md: Use VSCR_REGNO instead of 110 throughout. + +2016-09-01 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/altivec.md: Use VRSAVE_REGNO instead of 109 throughout. + +2016-09-01 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/altivec.md: Use CR6_REGNO instead of 74 throughout. + * config/rs6000/vector.md: Ditto. + * config/rs6000/vsx.md: Ditto. + +2016-09-01 Eric Botcazou <ebotcazou@adacore.com> + + * ipa-inline-analysis.c (param_change_prob): Get to the base object + first in all cases. + +2016-09-01 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/rs6000.md (*restore_gpregs_<mode>_r11, + *restore_gpregs_<mode>_r12, *restore_gpregs_<mode>_r1, + *return_and_restore_gpregs_<mode>_r11, + *return_and_restore_gpregs_<mode>_r12, + *return_and_restore_gpregs_<mode>_r1, + *return_and_restore_fpregs_<mode>_r11, + *return_and_restore_fpregs_<mode>_r12, + *return_and_restore_fpregs_<mode>_r1): Use the hard register LR_REGNO + directly instead of via the "l" constraint. Renumber operands. + Fix whitespace. + +2016-09-01 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/altivec.md (*save_world, *save_vregs_<mode>_r11, + save_vregs_<mode>_r12, *restore_vregs_<mode>_r11, + *restore_vregs_<mode>_r12): Use LR_REGNO instead of 65. + * config/rs6000/darwin.md (load_macho_picbase, load_macho_picbase_si, + load_macho_picbase_di, *call_indirect_nonlocal_darwin64, + *call_nonlocal_darwin64, *call_value_indirect_nonlocal_darwin64, + *call_value_nonlocal_darwin64, reload_macho_picbase, + reload_macho_picbase_si, reload_macho_picbase_di): Ditto. + * config/rs6000/rs6000.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Ditto. + * config/rs6000/rs6000.md (*save_gpregs_<mode>_r11, + *save_gpregs_<mode>_r12, *save_gpregs_<mode>_r1, + *save_fpregs_<mode>_r11, *save_fpregs_<mode>_r12, + *save_fpregs_<mode>_r1): Ditto. + * config/rs6000/spe.md (*save_gpregs_spe, *restore_gpregs_spe, + *return_and_restore_gpregs_spe): Ditto. + +2016-09-01 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/rs6000.md + (define_insn "*return_and_restore_fpregs_aix_<mode>_r11"): Delete + the use of the link register. + (define_insn "*return_and_restore_fpregs_aix_<mode>_r1"): Ditto. + +2016-09-01 Bill Schmidt <wschmidt@linux.vnet.ibm.com> + Michael Meissner <meissner@linux.vnet.ibm.com> + + PR target/72827 + * config/rs6000/rs6000.c (rs6000_legitimize_address): Avoid + reg+reg addressing for TImode. + (rs6000_legitimate_address_p): Only allow register indirect + addressing for TImode, even without TARGET_QUAD_MEMORY. + +2016-09-01 Richard Biener <rguenther@suse.de> + + PR middle-end/77436 + * tree-chrec.c (tree_fold_binomial): Use widest_int, properly + check whether the result fits the desired result type. + +2016-09-01 Nathan Sidwell <nathan@acm.org> + + * config/nvptx/nvptx.md (cbranch<mode>4): Op 2 can be const. + +2016-09-01 Wilco Dijkstra <wdijkstr@arm.com> + + * config/aarch64/aarch64.c (aarch64_legitimize_address_displacement): + New function. + (TARGET_LEGITIMIZE_ADDRESS_DISPLACEMENT): Define. + +2016-09-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + + * config/aarch64/aarch64.md (*ands<mode>_compare0): New pattern. + * config/aarch64/aarch64.c (aarch64_select_cc_mode): Return CC_NZmode + for comparisons of integer ZERO_EXTEND against zero. + +2016-09-01 Eric Botcazou <ebotcazou@adacore.com> + + * config/i386/i386.c (ix86_option_override_internal): Also disable the + STV pass if -mstackrealign is enabled. + 2016-08-31 Ilya Verbin <iverbin@gmail.com> * config/i386/driver-i386.c (host_detect_local_cpu): Fix detection of @@ -438,8 +1299,8 @@ (gen_scheduled_generic_parms_dies): Do not set early dwarf here. (dwarf2out_early_finish): But do it here. -2016-08-24 Michael Collison <michael.collison@linaro.org> - Michael Collison <michael.collison@arm.com> +2016-08-24 Michael Collison <michael.collison@linaro.org> + Michael Collison <michael.collison@arm.com> * config/arm/arm-modes.def: Add new condition code mode CC_V to represent the overflow bit. @@ -994,8 +1855,8 @@ When doing auto-parallelizing also prevent use of PHIs that carry dependences across loop backedges. -2016-08-18 Tamar Christina <tamar.christina@arm.com> - Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> +2016-08-18 Tamar Christina <tamar.christina@arm.com> + Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> * varasm.c (default_use_anchors_for_symbol_p): Reject too large decls. @@ -1039,7 +1900,7 @@ when find_reloads_toplev returns address_reloaded==-1. (alternative_allows_const_pool_ref): Update comment. -2015-08-17 Alan Hayward <alan.hayward@arm.com> +2015-08-17 Alan Hayward <alan.hayward@arm.com> PR tree-optimization/71752 * tree-vect-loop.c (vectorizable_reduction): Keep SLP operand ordering. @@ -1537,7 +2398,7 @@ the currently executable edges have fixed ranges. Always go through update_value_range. -2016-08-12 Alexandre Oliva <aoliva@redhat.com> +2016-08-12 Alexandre Oliva <aoliva@redhat.com> PR debug/63240 * langhooks-def.h @@ -2519,7 +3380,7 @@ fix_debug_reg_uses after changing source register mode to V1TImode if source register is undefined. -2015-08-01 Alan Hayward <alan.hayward@arm.com> +2015-08-01 Alan Hayward <alan.hayward@arm.com> PR tree-optimization/71818 * tree-vect-loop-manip.c (vect_can_advance_ivs_p): Don't advance IVs @@ -2901,7 +3762,7 @@ choosing a better vector mode to do the extraction from. 2016-07-26 Richard Biener <rguenther@suse.de> - Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> + Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> PR middle-end/70920 * match.pd ((intptr)x eq/ne CST to x eq/ne (typeof x) CST): New @@ -3337,11 +4198,11 @@ * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Reformat two multi-line strings. -2016-07-22 Martin Sebor <msebor@redhat.com> +2016-07-22 Martin Sebor <msebor@redhat.com> * doc/extend.texi (Compound Literals): Add '@' missed in last commit. -2016-07-22 Martin Sebor <msebor@redhat.com> +2016-07-22 Martin Sebor <msebor@redhat.com> PR c/71560 * doc/extend.texi (Compound Literals): Correct and clarify. @@ -6040,7 +6901,7 @@ * tree-ssa-loop-ivopts.c (determine_group_iv_cost_address): Compute cost for all uses in group. -2016-06-17 Bin Cheng <bin.cheng@arm.com> +2016-06-17 Bin Cheng <bin.cheng@arm.com> * tree-vect-loop.c (vect_create_epilog_for_reduction): Only insert gimple seq if it's not empty. @@ -9526,7 +10387,7 @@ builtin __SANITIZE_THREAD__ macros for fsanitize=thread switch. * doc/cpp.texi: Document new macros. -2016-05-19 Bin Cheng <bin.cheng@arm.com> +2016-05-19 Bin Cheng <bin.cheng@arm.com> PR tree-optimization/69848 * tree-vect-loop.c (vectorizable_reduction): Don't factor @@ -9755,7 +10616,7 @@ cleanup_cfg with CLEANUP_EXPENSIVE after shrink-wrapping instead of before. Add a comment. -2016-05-18 Bin Cheng <bin.cheng@arm.com> +2016-05-18 Bin Cheng <bin.cheng@arm.com> * tree-ssa-loop-ivopts.c (get_computation_cost_at): Check invariant expression pointer, not pointer to the pointer. @@ -14958,7 +15819,7 @@ (possible_polymorphic_call_target_p): Fix formatting. 2016-04-04 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - Jakub Jelinek <jakub@redhat.com> + Jakub Jelinek <jakub@redhat.com> PR middle-end/70457 * tree-inline.c (estimate_num_insn): Use gimple_call_builtin_p @@ -16132,7 +16993,7 @@ * config/aarch64/aarch64.opt (aarch64_fix_a53_err843419): Save. 2016-03-10 Alan Lawrence <alan.lawrence@arm.com> - Jakub Jelinek <jakub@redhat.com> + Jakub Jelinek <jakub@redhat.com> * common.opt (funconstrained-commons, flag_unconstrained_commons): New. * tree.c (array_at_struct_end_p): Do not limit to size of decl for @@ -18672,7 +19533,7 @@ * wide-int.cc (canonize_uhwi): New function. (wi::divmod_internal): Use it. -2016-02-02 James Norris <jnorris@codesourcery.com +2016-02-02 James Norris <jnorris@codesourcery.com> * gimplify.c (omp_notice_variable): Add usage check. |