X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=gcc%2FChangeLog;h=7d2323983ec26aab89715e685708b3d93e59d5be;hb=bd1f3566b12eb1e86d17b0c8c84c91ea5e9844b3;hp=fb735149918f308338efcd5344e801dafcfc967f;hpb=2d4bca81bd7dceb0701e5cd87132d8e3892c22ba;p=gcc.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fb735149918..7d2323983ec 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,319 @@ +2018-08-04 Martin Sebor + + PR tree-optimization/86571 + * gimple-ssa-sprintf.c (format_floating): Extend upper bound of + NaN output to 4. + +2018-08-03 Sandra Loosemore + + * config/nios2/nios2.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define. + +2018-08-03 Jeff Law + + PR target/86795 + * config/mn10300/mn10300.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + +2018-08-03 David Malcolm + + * doc/gcov.texi (-x): Remove duplicate "to". + * doc/invoke.texi (-Wnoexcept-type): Remove duplicate "calls". + (-Wif-not-aligned): Remove duplicate "is". + (-flto): Remove duplicate "the". + (MicroBlaze Options): In examples of "-mcpu=cpu-type", remove + duplicate "v5.00.b". + (MSP430 Options): Remove duplicate "and" from the description + of "-mgprel-sec=regexp". + (x86 Options): Remove duplicate copies of "vmldLog102" and + vmlsLog104 from description of "-mveclibabi=type". + +2018-08-03 Richard Sandiford + + * internal-fn.h (first_commutative_argument): Declare. + * internal-fn.c (first_commutative_argument): New function. + * tree-vect-slp.c (vect_get_and_check_slp_defs): Remove extra + restrictions for pattern statements. Use first_commutative_argument + to look for commutative operands in calls to internal functions. + +2018-08-03 Aldy Hernandez + + * Makefile.in (wide-int-range.o): New. + * tree-vrp.c: Move all the wide_int_* functions to... + * wide-int-range.cc: ...here. + * tree-vrp.h: Move all the wide_int_* prototypes to... + * wide-int-range.h: ...here. + +2018-08-03 Tom de Vries + + * common/config/nvptx/nvptx-common.c (nvptx_except_unwind_info): Return + UI_NONE. + * config/nvptx/nvptx.c (TARGET_ASM_BYTE_OP): Remove define. + * except.c (output_function_exception_table): Do early exit if + targetm_common.except_unwind_info (&global_options) == UI_NONE. + +2018-08-03 Martin Liska + + * predict.c (dump_prediction): Change to 2 digits + in fraction part. + +2018-08-03 Siddhesh Poyarekar + + * config/aarch64/falkor.md (falkor_am_1_vxvy_vxvy): Move + neon_dup_q to... + (falkor_am_1_gtov_gtov): ... a new insn reservation. + +2018-07-19 Ilya Leoshkevich + + * config/nds32/nds32.c (nds32_hard_regno_mode_ok): Replace > with >=. + * df-problems.c (df_remove_dead_eq_notes): Replace > with >=. + * dwarf2out.c (mem_loc_descriptor): Replace > with >=. + * lra-constraints.c (spill_hard_reg_in_range): Replace <= with <. + * lra-remat.c (call_used_input_regno_present_p): Replace <= with <. + +2018-08-02 David Malcolm + + * diagnostic-show-locus.c (diagnostic_show_locus): Use + pp_take_prefix when saving the existing prefix. + * diagnostic.c (diagnostic_append_note): Likewise. + * langhooks.c (lhd_print_error_function): Likewise. + * pretty-print.c (pp_set_prefix): Drop the "const" from "prefix" + param's type. Free the existing prefix. + (pp_take_prefix): New function. + (pretty_printer::pretty_printer): Drop the prefix parameter. + Rename the length parameter to match the comment. + (pretty_printer::~pretty_printer): Free the prefix. + * pretty-print.h (pretty_printer::pretty_printer): Drop the prefix + parameter. + (struct pretty_printer): Drop the "const" from "prefix" field's + type and clarify memory management. + (pp_set_prefix): Drop the "const" from the 2nd param. + (pp_take_prefix): New decl. + +2018-08-02 Aaron Sawdey + + * config/rs6000/rs6000-string.c (select_block_compare_mode): Move test + for word_mode_ok here instead of passing as argument. + (expand_block_compare): Change select_block_compare_mode() call. + (expand_strncmp_gpr_sequence): New function. + (expand_strn_compare): Make use of expand_strncmp_gpr_sequence. + +2018-08-02 Jeff Law + + PR target/86790 + * config/m68k/m68k.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86784 + * config/h8300/h8300.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + +2018-08-02 Tom de Vries + + PR target/86660 + * common/config/nvptx/nvptx-common.c (nvptx_except_unwind_info): New + function. Return UI_TARGET unconditionally. + (TARGET_EXCEPT_UNWIND_INFO): Redefine to nvptx_except_unwind_info. + * config/nvptx/nvptx.c (TARGET_ASM_BYTE_OP): Emit commented out '.byte'. + +2018-08-02 Richard Sandiford + + * genemit.c (print_overload_test): Fix typo. + +2018-08-02 Richard Biener + + PR tree-optimization/86816 + * tree-ssa-tail-merge.c (tail_merge_valueize): New function + which checks for value availability before querying it. + (gvn_uses_equal): Use it. + (same_succ_hash): Likewise. + (gimple_equal_p): Likewise. + +2018-08-02 Nick Clifton + + PR target/86813 + * config/stormy16/stormy16.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86810 + * config/v850/v850.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86810 + * config/v850/v850.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86803 + * config/rx/rx.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86797 + * config/msp430/msp430.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86791 + * config/mcore/mcore.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86789 + * config/m32r/m32r.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86787 + * config/iq2000/iq2000.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): + Define to speculation_safe_value_not_needed. + + PR target/86782 + * config/frv/frv.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): Define to + speculation_safe_value_not_needed. + + PR target/86781 + * config/fr30/fr30.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): Define + to speculation_safe_value_not_needed. + +2018-08-02 Richard Sandiford + + * doc/md.texi: Expand the documentation of instruction names + to mention port-local uses. Document '@' in pattern names. + * read-md.h (overloaded_instance, overloaded_name): New structs. + (mapping): Declare. + (md_reader::handle_overloaded_name): New member function. + (md_reader::get_overloads): Likewise. + (md_reader::m_first_overload): New member variable. + (md_reader::m_next_overload_ptr): Likewise. + (md_reader::m_overloads_htab): Likewise. + * read-md.c (md_reader::md_reader): Initialize m_first_overload, + m_next_overload_ptr and m_overloads_htab. + * read-rtl.c (iterator_group): Add "type" and "get_c_token" fields. + (get_mode_token, get_code_token, get_int_token): New functions. + (map_attr_string): Add an optional argument that passes back + the associated iterator. + (overloaded_name_hash, overloaded_name_eq_p, named_rtx_p): + (md_reader::handle_overloaded_name, add_overload_instance): New + functions. + (apply_iterators): Handle '@' names. Report an error if '@' + is used without iterators. + (initialize_iterators): Initialize the new iterator_group fields. + * genopinit.c (handle_overloaded_code_for) + (handle_overloaded_gen): New functions. + (main): Use them to print declarations of maybe_code_for_* and + maybe_gen_* functions, and inline definitions of code_for_* and gen_*. + * genemit.c (print_overload_arguments, print_overload_test) + (handle_overloaded_code_for, handle_overloaded_gen): New functions. + (main): Use it to print definitions of maybe_code_for_* and + maybe_gen_* functions. + * config/aarch64/aarch64.c (aarch64_split_128bit_move): Use + gen_aarch64_mov{low,high}_di and gen_aarch64_movdi_{low,high} + instead of explicit mode checks. + (aarch64_split_simd_combine): Likewise gen_aarch64_simd_combine. + (aarch64_split_simd_move): Likewise gen_aarch64_split_simd_mov. + (aarch64_emit_load_exclusive): Likewise gen_aarch64_load_exclusive. + (aarch64_emit_store_exclusive): Likewise gen_aarch64_store_exclusive. + (aarch64_expand_compare_and_swap): Likewise + gen_aarch64_compare_and_swap and gen_aarch64_compare_and_swap_lse + (aarch64_gen_atomic_cas): Likewise gen_aarch64_atomic_cas. + (aarch64_emit_atomic_swap): Likewise gen_aarch64_atomic_swp. + (aarch64_constant_pool_reload_icode): Delete. + (aarch64_secondary_reload): Use code_for_aarch64_reload_movcp + instead of aarch64_constant_pool_reload_icode. Use + code_for_aarch64_reload_mov instead of explicit mode checks. + (rsqrte_type, get_rsqrte_type, rsqrts_type, get_rsqrts_type): Delete. + (aarch64_emit_approx_sqrt): Use gen_aarch64_rsqrte instead of + get_rsqrte_type and gen_aarch64_rsqrts instead of gen_rqrts_type. + (recpe_type, get_recpe_type, recps_type, get_recps_type): Delete. + (aarch64_emit_approx_div): Use gen_aarch64_frecpe instead of + get_recpe_type and gen_aarch64_frecps instead of get_recps_type. + (aarch64_atomic_load_op_code): Delete. + (aarch64_emit_atomic_load_op): Likewise. + (aarch64_gen_atomic_ldop): Use UNSPECV_ATOMIC_* instead of + aarch64_atomic_load_op_code. Use gen_aarch64_atomic_load + instead of aarch64_emit_atomic_load_op. + * config/aarch64/aarch64.md (aarch64_reload_movcp) + (aarch64_reload_movcp, aarch64_reload_mov) + (aarch64_movdi_low, aarch64_movdi_high) + (aarch64_movhigh_di, aarch64_movlow_di): Add a '@' + character before the pattern name. + * config/aarch64/aarch64-simd.md (aarch64_split_simd_mov) + (aarch64_rsqrte, aarch64_rsqrts) + (aarch64_simd_combine, aarch64_frecpe) + (aarch64_frecps): Likewise. + * config/aarch64/atomics.md (atomic_compare_and_swap) + (aarch64_compare_and_swap, aarch64_compare_and_swap_lse) + (aarch64_load_exclusive, aarch64_store_exclusive) + (aarch64_atomic_swp, aarch64_atomic_cas) + (aarch64_atomic_load): Likewise. + +2018-08-02 Richard Sandiford + + * config/aarch64/aarch64.c (aarch64_float_const_representable_p): + Allow HFmode constants if TARGET_FP_F16INST. + +2018-08-02 Jackson Woodruff + + PR target/86014 + * config/aarch64/aarch64.c (aarch64_operands_adjust_ok_for_ldpstp): + No longer check last store for clobber of address register. + +2018-08-02 Martin Liska + + PR gcov-profile/86817 + * gcov.c (process_all_functions): New function. + (main): Call it. + (process_file): Move functions processing to + process_all_functions. + +2018-08-02 David Malcolm + + * dumpfile.c (dump_user_location_t::dump_user_location_t): Add + "const" to the "gimple *" and "rtx_insn *" parameters. + * dumpfile.h (dump_user_location_t::dump_user_location_t): + Likewise. + (dump_location_t::dump_location_t): Likewise. + +2018-08-01 Martin Sebor + + PR tree-optimization/86650 + * gimple-pretty-print.c (percent_G_format): Accept a "gimple *" + rather than a "gcall *". Directly pass the data of interest + to percent_K_format, rather than building a temporary CALL_EXPR + to hold it. + * gimple-fold.c (gimple_fold_builtin_strncpy): Adjust. + (gimple_fold_builtin_strncat): Adjust. + * gimple-ssa-warn-restrict.h (check_bounds_or_overlap): Replace + gcall* argument with gimple*. + * gimple-ssa-warn-restrict.c (check_call): Same. + (wrestrict_dom_walker::before_dom_children): Same. + (builtin_access::builtin_access): Same. + (check_bounds_or_overlap): Same + (maybe_diag_overlap): Same. + (maybe_diag_offset_bounds): Same. + * tree-diagnostic.c (default_tree_printer): Move usage of + EXPR_LOCATION (t) and TREE_BLOCK (t) from within percent_K_format + to this callsite. + * tree-pretty-print.c (percent_K_format): Add argument. + * tree-pretty-print.h: Add argument. + * tree-ssa-ccp.c (pass_post_ipa_warn::execute): Adjust. + * tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Adjust. + (maybe_diag_stxncpy_trunc): Same. + (handle_builtin_stxncpy): Same. + (handle_builtin_strcat): Same. + +2018-08-01 Richard Sandiford + + * match.pd: Optimise pointer range checks. + +2018-08-01 Richard Sandiford + + PR tree-optimization/86758 + * tree-vect-stmts.c (vectorizable_simd_clone_call): Don't try + to remove pattern statements. + +2018-08-01 Richard Sandiford + + * tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Use the + result of dfs_enumerate_from when constructing stmt_vec_infos, + instead of additionally calling get_loop_body. + 2018-08-01 Richard Sandiford * tree-vectorizer.h (vect_create_data_ref_ptr): Remove inv_p