+2019-06-11 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/90819
+ * trans-mem.c (tm_memopt_compute_available): Add assertion
+ that blocks is not empty. Formatting fix.
+
+2019-06-11 Martin Liska <mliska@suse.cz>
+
+ PR c++/87847
+ * hash-table.h: Extend create_gcc, add one parameter
+ that is passed into hash_table::hash_table.
+
+2019-06-10 Uroš Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386-protos.h (ix86_split_fp_absneg_operator):
+ New prototype.
+ * config/i386/i386-expand.c (ix86_expand_fp_absneg_operator):
+ Emit clobber also for non-sse operations.
+ (ix86_split_fp_absneg_operator): New function.
+ * config/i386/i386.md (SSEMODEF): New mode iterator.
+ (ssevecmodef): New mode attribute.
+ (<code>tf2): Use absneg code iterator.
+ (*<code>tf2_1): Rename from *absnegtf3_sse. Use absneg code iterator.
+ Add three-operand AVX alternatives.
+ (*<code><mode>2_i387_1): Rename from *absnegxf2_i387.
+ Use absneg code iterator and X87MODEF mode iterator.
+ (absneg fp_reg non-sse splitter): Call absneg code iterator
+ and X87MODEF mode iterator.
+ (absneg general_reg non-sse splitter): Use absneg code iterator
+ and X87MODEF mode iterator. Use ix86_split_fp_absneg_operator.
+ (*<code><mode>2_1): Rename from *absneg<mode>2. Use absneg
+ code iterator. Add three-operand AVX alternative.
+ (absneg sse_reg splitter): Use absneg code iterator
+ and SSEMODEF mode iterator. Handle AVX operands.
+ (absneg fp_reg splitter): Use absneg code iterator
+ and MODEF mode iterator.
+ (absneg general_reg splitter): Merge splitters using MODEF mode
+ iterator. Use absneg code iterator. Call
+ ix86_split_fp_absneg_operator.
+ (*<code><mode>2_i387): Rename from *<code><mode>2_1.
+ Do not enable for non-sse modes before reload.
+ (CSGNMODE): Remove.
+ (CSGNVMODE): Ditto.
+ (copysing<mode>3): Use SSEMODEF instead of CSGNMODE and
+ ssevecmodef mode attribute instaed of CSGNVMODE.
+ (copysign<mode>3_const): Ditto.
+ (copysign<mode>3_var): Ditto.
+ * config/i386/i386.md (*<code><mode>2): Rename from *absneg<mode>2.
+ Use absneg code iterator. Simplify code using std::swap.
+ * config/i386/predicates.md (absneg_operator): Remove.
+
+2019-06-10 Martin Sebor <msebor@redhat.com>
+
+ * gimple-fold.c (get_range_strlen): Update comment that didn't
+ make it into r267503 or related commits.
+
+2019-06-10 Vladislav Ivanishin <vlad@ispras.ru>
+
+ * gcov-tool.c (merge_usage, rewrite_usage): Mark with
+ ATTRIBUTE_NORETURN thus making consistent with overlap_usage.
+
+2019-06-10 Jakub Jelinek <jakub@redhat.com>
+
+ * tree.def (OMP_SCAN): New tree code.
+ * tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_INCLUSIVE and
+ OMP_CLAUSE_EXCLUSIVE.
+ * tree.h (OMP_CLAUSES): Use OMP_SCAN instead of OMP_TASKGROUP.
+ (OMP_SCAN_BODY, OMP_SCAN_CLAUSES): Define.
+ * tree.c (omp_clause_num_ops, omp_clause_code_name): Add entries for
+ OMP_CLAUSE_{IN,EX}CLUSIVE.
+ (walk_tree_1): Handle OMP_CLAUSE_{IN,EX}CLUSIVE.
+ * tree-nested.c (convert_nonlocal_reference_stmt,
+ convert_local_reference_stmt, convert_gimple_call): Handle
+ GIMPLE_OMP_SCAN.
+ * tree-pretty-print.c (dump_omp_clause): Handle
+ OMP_CLAUSE_{IN,EX}CLUSIVE.
+ (dump_generic_node): Handle OMP_SCAN.
+ * gimple.def (GIMPLE_OMP_SCAN): New gimple code.
+ * gimple.h (gomp_scan): New type.
+ (is_a_helper <gomp_scan *>::test,
+ is_a_helper <const gomp_scan *>::test): New templates.
+ (gimple_build_omp_scan): Declare.
+ (gimple_omp_scan_clauses, gimple_omp_scan_clauses_ptr,
+ gimple_omp_scan_set_clauses): New inline functions.
+ (CASE_GIMPLE_OMP): Add case GIMPLE_OMP_SCAN:.
+ * gimple.c (gimple_build_omp_scan): New function.
+ (gimple_copy): Handle GIMPLE_OMP_SCAN.
+ * gimple-walk.c (walk_gimple_op, walk_gimple_stmt): Likewise.
+ * gimple-pretty-print.c (dump_gimple_omp_block): Don't handle
+ GIMPLE_OMP_TASKGROUP.
+ (dump_gimple_omp_scan): New function.
+ (pp_gimple_stmt_1): Handle GIMPLE_OMP_SCAN.
+ * gimple-low.c (lower_stmt): Handle GIMPLE_OMP_SCAN.
+ * tree-inline.c (remap_gimple_stmt, estimate_num_insns): Likewise.
+ * gimplify.c (enum gimplify_omp_var_data): Add GOVD_REDUCTION_INSCAN.
+ (is_gimple_stmt): Handle OMP_SCAN.
+ (gimplify_scan_omp_clauses): Reject inscan reductions on constructs
+ other than OMP_FOR or OMP_SIMD. Handle OMP_CLAUSE_{IN,EX}CLUSIVE.
+ (gimplify_adjust_omp_clauses): Diagnose inscan reductions not
+ mentioned in nested #pragma omp scan. Handle
+ OMP_CLAUSE_{IN,EX}CLUSIVE.
+ (gimplify_expr): Handle OMP_SCAN.
+ * omp-low.c (check_omp_nesting_restrictions): For parent context,
+ look through GIMPLE_OMP_SCAN context. Allow #pragma omp scan in
+ simd constructs.
+ (scan_omp_1_stmt, lower_omp_1, diagnose_sb_1, diagnose_sb_2): Handle
+ GIMPLE_OMP_SCAN.
+
+2019-06-10 Martin Liska <mliska@suse.cz>
+
+ * ipa-cp.c (ignore_edge_p): New function.
+ (build_toporder_info): Use it.
+ * ipa-inline.c (ignore_edge_p): New function.
+ (inline_small_functions): Use it.
+ * ipa-pure-const.c (ignore_edge_for_nothrow):
+ Verify opt_for_fn for caller and callee.
+ (ignore_edge_for_pure_const): Likewise.
+ * ipa-reference.c (ignore_edge_p): Extend to check
+ for opt_for_fn.
+ * ipa-utils.c (searchc): Refactor.
+ * ipa-utils.h: Fix coding style.
+
+2019-06-10 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * config/arc/arc.c (arc_rtx_costs): Update costs.
+
+2019-06-10 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * config/arc/arc-protos.h (arc_check_ior_const): Declare.
+ (arc_split_ior): Likewise.
+ (arc_check_mov_const): Likewise.
+ (arc_split_mov_const): Likewise.
+ * config/arc/arc.c (arc_print_operand): Fix 'z' letter.
+ (arc_rtx_costs): Replace check Crr with Cax constraint.
+ (prepare_move_operands): Cleanup, remove unused code.
+ (arc_split_ior): New function.
+ (arc_check_ior_const): Likewise.
+ (arc_split_mov_const): Likewise.
+ (arc_check_mov_const): Likewise.
+ * config/arc/arc.md (movsi_insn): Restructure it, and convert it
+ in define_insn_and_split pattern.
+ (iorsi3): Likewise.
+ (mulsi3_v2): Add new matching variant.
+ (andsi3_i): Cleanup pattern.
+ (rotrsi3_cnt1): Update pattern.
+ (rotrsi3_cnt8): New pattern.
+ (ashlsi2_cnt8): Likewise.
+ (ashlsi2_cnt16): Likewise.
+ * config/arc/constraints.md (C0p): Update constraint.
+ (Crr): Remove it.
+ (C0x): New pattern.
+ (Cax): New pattern.
+
+2019-06-10 Martin Liska <mliska@suse.cz>
+
+ * ipa-icf.c (sem_item_optimizer::parse_nonsingleton_classes):
+ Update coding style.
+ (sem_item_optimizer::dump_cong_classes):
+ Print how many items are in a non-singular class. Improve
+ coding style.
+
+2019-06-10 Martin Liska <mliska@suse.cz>
+
+ * value-prof.c (dump_histogram_value): Change dump format.
+ (gimple_mod_subtract_transform): Remove legacy comment.
+
+2019-06-10 Martin Liska <mliska@suse.cz>
+
+ * value-prof.c (dump_histogram_value): Print histogram values
+ only if present.
+
+2019-06-10 Martin Liska <mliska@suse.cz>
+
+ * gcov-io.h (GCOV_DISK_SINGLE_VALUES): New.
+ (GCOV_SINGLE_VALUE_COUNTERS): Likewise.
+ * ipa-profile.c (ipa_profile_generate_summary):
+ Use get_most_common_single_value.
+ * tree-profile.c (gimple_init_gcov_profiler):
+ Instrument with __gcov_one_value_profiler_v2
+ and __gcov_indirect_call_profiler_v4.
+ * value-prof.c (dump_histogram_value):
+ Print all values for HIST_TYPE_SINGLE_VALUE.
+ (stream_out_histogram_value): Update assert for
+ N values.
+ (stream_in_histogram_value): Set number of
+ counters for HIST_TYPE_SINGLE_VALUE.
+ (get_most_common_single_value): New.
+ (gimple_divmod_fixed_value_transform):
+ Use get_most_common_single_value.
+ (gimple_ic_transform): Likewise.
+ (gimple_stringops_transform): Likewise.
+ (gimple_find_values_to_profile): Set number
+ of counters for HIST_TYPE_SINGLE_VALUE.
+ * value-prof.h (get_most_common_single_value):
+ New.
+
+2019-06-10 Martin Liska <mliska@suse.cz>
+
+ * hash-map.h: Pass default value to hash_table ctor.
+ * hash-table.h: Add default value to call of a ctor.
+
+2019-06-08 Jonathan Wakely <jwakely@redhat.com>
+
+ * doc/invoke.texi (C Dialect Options): Minor grammatical change.
+ (x86 Options): Replace all uses of "PCL_MUL" with "PCLMUL"
+
+2019-06-07 John David Anglin <danglin@gcc.gnu.orig>
+
+ PR target/90751
+ * config/pa/pa-linux.h (ASM_DECLARE_FUNCTION_NAME): Update comment.
+ Call pa_output_function_label.
+ (TARGET_ASM_FUNCTION_PROLOGUE): define.
+ * config/pa/pa-protos.h (pa_output_function_label): Declare.
+ * config/pa/pa.c (pa_output_function_prologue): Add ATTRIBUTE_UNUSED
+ to declaration.
+ (pa_linux_output_function_prologue): Declare.
+ (TARGET_ASM_FUNCTION_PROLOGUE): Delete define.
+ (pa_output_function_label): New.
+ (pa_output_function_prologue): Revise to use pa_output_function_label.
+ (pa_linux_output_function_prologue): New.
+ * config/pa/pa.h (TARGET_ASM_FUNCTION_PROLOGUE): Define.
+
+2019-06-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-vrp.h (value_range_base::intersect): New.
+ (value_range::intersect_helper): Move from here...
+ (value_range_base::intersect_helper): ...to here.
+ * tree-vrp.c (value_range::intersect_helper): Rename to...
+ (value_range_base::intersect_helper): ...this, and rewrite to
+ return a value instead of modifying THIS in place.
+ Also, move equivalence handling...
+ (value_range::intersect): ...here, while calling intersect_helper.
+ * gimple-fold.c (size_must_be_zero_p): Use value_range_base when
+ calling intersect.
+ * gimple-ssa-evrp-analyze.c (ecord_ranges_from_incoming_edge):
+ Same.
+ * vr-values.c (vrp_evaluate_conditional_warnv_with_ops): Same.
+
+2019-06-07 Jakub Jelinek <jakub@redhat.com>
+
+ * Makefile.in (genprogerr): Add condmd.
+ (genprog): Remove it here.
+
+2019-06-07 Andrew Stubbs <ams@codesourcery.com>
+
+ * doc/invoke.texi (AMD GCN Options): Add gfx906.
+
+2019-06-07 Richard Biener <rguenther@suse.de>
+
+ PR debug/90574
+ * tree-cfg.c (stmt_starts_bb_p): Split blocks at labels
+ that appear after user labels.
+
+2019-06-07 Martin Liska <mliska@suse.cz>
+
+ * cselib.c (cselib_init): Disable hash table
+ sanitization.
+ * hash-set.h: Pass new default argument to m_table.
+ * hash-table.c: Add global variable with hash table
+ sanitization limit.
+ * hash-table.h (Allocator>::hash_table): Add new argument
+ to ctor.
+ (hashtab_chk_error): New.
+ * params.def (PARAM_HASH_TABLE_VERIFICATION_LIMIT): New.
+ * toplev.c (process_options): Set hash_table_sanitize_eq_limit
+ from the PARAM_HASH_TABLE_VERIFICATION_LIMIT value.
+
+2019-06-07 Jan Hubicka <hubicka@ucw.cz>
+
+ * common.opt (flto-odr-type-merging): Ignore.
+ * invoke.texi (-flto-odr-type-merging): Remove.
+ * ipa-devirt.c (odr_vtable_hasher:odr_name_hasher): Remove.
+ (can_be_vtable_hashed_p): Remove.
+ (hash_odr_vtable): Remove.
+ (odr_vtable_hasher::hash): Remove.
+ (types_same_for_odr): Remove.
+ (types_odr_comparable): Remove.
+ (odr_vtable_hasher::equal): Remove.
+ (odr_vtable_hash_type, odr_vtable_hash): Remove.
+ (add_type_duplicate): Do not synchronize vtable and name hashtables.
+ (get_odr_type): Do not use vtable hash.
+ (dump_odr_type): Remove commented out code.
+ (build_type_inheritance_graph): Do not allocate vtable hash.
+ (rebuild_type_inheritance_graph): Do not delete vtable hash.
+ * ipa-utils.h (type_with_linkage_p): Drop vtable hash path.
+ (odr_type_p): Likewise.
+ * tree.c (need_assembler_name_p): Remove flag_lto_odr_type_mering
+ test.
+
+2019-06-07 Jan Hubicka <hubicka@ucw.cz>
+
+ * tree-ssa-alias.c (aliasing_component_refs_p): Do not give up
+ immediately after same_types_for_tbaa_p returns -1 and continue
+ looking for possible exact match; if matching types are arrays
+ watch for partial overlaps.
+ (indirect_ref_may_alias_decl_p): Watch for partial array overlaps.
+ (indirect_refs_may_alias_p): Do type based disambiguation first;
+ update comment.
+
+2019-06-07 Richard Sandiford <richard.sandiford@arm.com>
+
+ * fwprop.c (propagate_rtx): Fix call to paradoxical_subreg_p.
+
+2019-06-07 Martin Liska <mliska@suse.cz>
+
+ * doc/invoke.texi: Remove param.
+ * gcov-counter.def (GCOV_COUNTER_ICALL_TOPNV):
+ Remove.
+ * gcov-io.h (GCOV_ICALL_TOPN_VAL): Likewise.
+ (GCOV_ICALL_TOPN_NCOUNTS): Likewise.
+ * params.def (PARAM_INDIR_CALL_TOPN_PROFILE): Likewise.
+ * profile.c (instrument_values): Remove
+ HIST_TYPE_INDIR_CALL_TOPN.
+ * tree-profile.c (init_ic_make_global_vars):
+ Always build __gcov_indirect_call only.
+ (gimple_init_gcov_profiler): Remove usage
+ of PARAM_INDIR_CALL_TOPN_PROFILE.
+ (gimple_gen_ic_profiler): Likewise.
+ * value-prof.c (dump_histogram_value): Likewise.
+ (stream_in_histogram_value): Likewise.
+ (gimple_indirect_call_to_profile): Likewise.
+ (gimple_find_values_to_profile): Likewise.
+ * value-prof.h (enum hist_type): Likewise.
+
+2019-06-07 Martin Liska <mliska@suse.cz>
+
+ * tree-ssa-loop.c (get_lsm_tmp_name): Return at the end of the
+ function.
+
+2019-06-07 Martin Liska <mliska@suse.cz>
+
+ PR tree-optimization/78902
+ * builtin-attrs.def (ATTR_WARN_UNUSED_RESULT): New.
+ (ATTR_MALLOC_NOTHROW_LEAF_LIST): Remove.
+ (ATTR_WARN_UNUSED_RESULT_NOTHROW_LEAF_LIST): New.
+ (ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_LEAF_LIST): New.
+ (ATTR_ALLOC_SIZE_2_NOTHROW_LIST): Remove.
+ (ATTR_MALLOC_SIZE_1_NOTHROW_LEAF_LIST): Remove.
+ (ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_LIST): New.
+ (ATTR_ALLOC_WARN_UNUSED_RESULT_SIZE_2_NOTHROW_LIST): New.
+ (ATTR_MALLOC_WARN_UNUSED_RESULT_SIZE_1_NOTHROW_LEAF_LIST): New.
+ (ATTR_ALLOCA_SIZE_1_NOTHROW_LEAF_LIST): Remove.
+ (ATTR_ALLOCA_WARN_UNUSED_RESULT_SIZE_1_NOTHROW_LEAF_LIST): New.
+ (ATTR_MALLOC_SIZE_1_2_NOTHROW_LEAF_LIST): Remove.
+ (ATTR_MALLOC_WARN_UNUSED_RESULT_SIZE_1_2_NOTHROW_LEAF_LIST):
+ New.
+ (ATTR_ALLOC_SIZE_2_NOTHROW_LEAF_LIST): Remove.
+ (ATTR_ALLOC_WARN_UNUSED_RESULT_SIZE_2_NOTHROW_LEAF_LIST): New.
+ (ATTR_MALLOC_NOTHROW_NONNULL): Remove.
+ (ATTR_WARN_UNUSED_RESULT_NOTHROW_NONNULL): New.
+ (ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL): New.
+ (ATTR_MALLOC_NOTHROW_NONNULL_LEAF): Remove.
+ (ATTR_WARN_UNUSED_RESULT_NOTHROW_NONNULL_LEAF): New.
+ (ATTR_MALLOC_WARN_UNUSED_RESULT_NOTHROW_NONNULL_LEAF): New.
+ * builtins.def (BUILT_IN_ALIGNED_ALLOC): Change to use
+ warn_unused_result attribute.
+ (BUILT_IN_STRDUP): Likewise.
+ (BUILT_IN_STRNDUP): Likewise.
+ (BUILT_IN_ALLOCA): Likewise.
+ (BUILT_IN_CALLOC): Likewise.
+ (BUILT_IN_MALLOC): Likewise.
+ (BUILT_IN_REALLOC): Likewise.
+
+2019-06-06 Jim Wilson <jimw@sifive.com>
+
+ PR target/89955
+ * config/riscv/riscv.h (STARTFILE_PREFIX_SPEC): Deleted.
+ * config/riscv/freebsd.h (STARTFILE_PREFIX_SPEC): Added.
+ * config/riscv/linux.h (STARTFILE_PREFIX_SPEC): Added.
+
+2019-06-06 Martin Sebor <msebor@redhat.com>
+
+ * tree-ssa-strlen.c (adjust_related_strinfos): Avoid trailing article.
+ (handle_builtin_malloc): Remove trailing spaces.
+ (handle_builtin_memset): Same.
+ (handle_builtin_memcmp): Same.
+ (compute_string_length): Same.
+ (determine_min_objsize): Same.
+ (handle_builtin_string_cmp): Same.
+ (handle_char_store): Same. Break up excessively long line.
+
+2019-06-06 Martin Jambor <mjambor@suse.cz>
+
+ * tree-sra.c (build_reconstructed_reference): Drop the alignment
+ check.
+
+2019-06-06 Martin Jambor <mjambor@suse.cz>
+
+ * tree-sra.c (struct access): New field grp_same_access_path.
+ (dump_access): Dump it.
+ (build_reconstructed_reference): New function.
+ (build_ref_for_model): Use it if possible.
+ (path_comparable_for_same_access): New function.
+ (same_access_path_p): Likewise.
+ (sort_and_splice_var_accesses): Set the new flag.
+ (analyze_access_subtree): Likewise.
+ (propagate_subaccesses_across_link): Propagate zero value of the new
+ flag down the access tree.
+
+2019-06-06 Andrew Stubbs <ams@codesourcery.com>
+
+ * config.gcc (amdgcn-*-*): Allow --with-arch=gfx906.
+ * config/gcn/gcn.opt (gpu_type): Add gfx906.
+ * config/gcn/t-gcn-hsa (MULTILIB_OPTIONS): Add gfx906 multilib.
+ (MULTILIB_DIRNAMES): Rename gcn5 to gfx900.
+ Add gfx906.
+
+2019-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ PR tree-optimization/90332
+ * config/aarch64/aarch64.c (aarch64_expand_vector_init):
+ Handle VALS containing two vectors.
+ * config/aarch64/aarch64-simd.md (*aarch64_combinez<mode>): Rename
+ to...
+ (@aarch64_combinez<mode>): ... This.
+ (*aarch64_combinez_be<mode>): Rename to...
+ (@aarch64_combinez_be<mode>): ... This.
+ (vec_init<mode><Vhalf>): New define_expand.
+ * config/aarch64/iterators.md (Vhalf): Handle V8HF.
+
+2019-06-06 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * config/msp430/msp430.md (ashlhi3): Use the const_variant of shift
+ library functions only when not optimizing for size.
+ (ashlsi3): Likewise.
+ (ashrhi3): Likewise.
+ (ashrsi3): Likewise.
+ (lshrhi3): Likewise.
+ (lshrsi3): Likewise.
+
+2019-06-06 Andreas Krebbel <krebbel@linux.ibm.com>
+
+ PR rtl-optimization/88751
+ * ira.c (ira): Use the number of the actually referenced registers
+ when calculating the threshold.
+
+2019-06-06 Jakub Jelinek <jakub@redhat.com>
+
+ * configure: Regenerate.
+
+2019-06-06 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * config/msp430/msp430.md (ashlhi3): Force shift src operand into a
+ register if it is in memory, so the shift can be emulated with a rotate
+ instruction.
+ (ashrhi3): Likewise.
+ (lshrhi3): Likewise.
+
+2019-06-06 Martin Liska <mliska@suse.cz>
+
+ PR tree-optimization/87954
+ * match.pd: Simplify mult where both arguments are 0 or 1.
+
+2019-06-06 Richard Biener <rguenther@suse.de>
+
+ * vr-values.c (vr_values::extract_range_from_ssa_name): Do not
+ put equivalences on UNDEFINED ranges.
+ * gimple-ssa-evrp.c (evrp_dom_walker::before_dom_children):
+ Make sure to drop defs of stmts added during simplification
+ to VARYING.
+
+2019-06-06 Richard Biener <rguenther@suse.de>
+
+ * tree-ssa-structalias.c: Include tree-cfg.h.
+ (make_heapvar): Do not make heap vars artificial.
+ (find_func_aliases_for_builtin_call): Handle stack allocation
+ functions.
+ (find_func_aliases): Delay processing of simple enough returns
+ in non-IPA mode.
+ (set_uids_in_ptset): Adjust.
+ (find_what_var_points_to): Likewise.
+ (solve_constraints): Do not dump points-to sets here.
+ (compute_points_to_sets): Post-process return statements,
+ amending the escaped solution. Dump points-to sets afterwards.
+ (ipa_pta_execute): Dump points-to sets.
+
+2019-06-06 Martin Liska <mliska@suse.cz>
+
+ PR web/87933
+ * doc/install.texi: Fix HTML headers and
+ titles for 'Installing GCC' pages.
+
+2019-06-06 Martin Liska <mliska@suse.cz>
+
+ * ipa-icf-gimple.h (dump_message_1): Remove.
+ (dump_message): Likewise.
+ (return_false_with_message_1): Print also file.
+ (return_false_with_msg): Likewise.
+ (return_with_result): Likewise.
+ (return_with_debug): Likewise.
+ * ipa-icf.c (sem_function::equals_private): Remove call
+ to dump_message.
+
+2019-06-05 Hongtao Liu <hongtao.liu@intel.com>
+
+ * config/i386/sse.md (define_mode_suffix vecmemsuffix): New.
+ (define_insn "avx512dq_fpclass<mode><mask_scalar_merge_name>"): Enable
+ memory operand for it.
+ (define_insn "avx512dq_vmfpclass<mode><mask_scalar_merge_name>"): Ditto.
+
+2019-06-05 Martin Sebor <msebor@redhat.com>
+
+ * config/i386/i386-features.c (ix86_get_function_versions_dispatcher):
+ Adjust quoting and hyphenation.
+ * convert.c (convert_to_real_1): Same.
+ * gcc.c (driver_wrong_lang_callback): Same.
+ (driver::handle_unrecognized_options): Same.
+ * gimple-ssa-nonnull-compare.c (do_warn_nonnull_compare): Same.
+ * opts-common.c (cmdline_handle_error): Same.
+ (read_cmdline_option): Same.
+ * opts-global.c (complain_wrong_lang): Same.
+ (print_ignored_options): Same.
+ (handle_common_deferred_options): Same.
+ * pretty-print.h: Same.
+ * print-rtl.c (debug_bb_n_slim): Same.
+ * sched-rgn.c (make_pass_sched_fusion): Same.
+ * tree-cfg.c (verify_gimple_assign_unary): Same.
+ (verify_gimple_label): Same.
+ * tree-ssa-operands.c (verify_ssa_operands): Same.
+ * varasm.c (do_assemble_alias): Same.
+ (assemble_alias): Same.
+
+2019-06-05 Richard Henderson <rth@twiddle.net>
+
+ * config/alpha/alpha.c (direct_return): Move down after
+ struct machine_function definition; use saved frame_size;
+ return bool.
+ (struct machine_function): Add sa_mask, sa_size, frame_size.
+ (alpha_sa_mask, alpha_sa_size, compute_frame_size): Merge into ...
+ (alpha_compute_frame_layout): ... new function.
+ (TARGET_COMPUTE_FRAME_LAYOUT): New.
+ (alpha_initial_elimination_offset): Use saved sa_size.
+ (alpha_vms_initial_elimination_offset): Likewise.
+ (alpha_vms_can_eliminate): Remove alpha_sa_size call.
+ (alpha_expand_prologue): Use saved frame data. Merge integer
+ and fp register save loops.
+ (alpha_expand_epilogue): Likewise.
+ (alpha_start_function): Use saved frame data.
+ * config/alpha/alpha-protos.h (direct_return): Update.
+ (alpha_sa_size): Remove.
+
+2019-06-05 Eric Botcazou <ebotcazou@adacore.com>
+
+ * fold-const.c (extract_muldiv_1) <PLUS_EXPR>: Do not distribute a
+ multiplication by a power-of-two value.
+ (fold_plusminus_mult_expr): Use pow2p_hwi to spot a power-of-two value
+ and turn the modulo operation into a masking operation.
+
+2019-06-05 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/90733
+ * var-tracking.c (vt_expand_loc_callback): Don't create raw subregs
+ with VOIDmode inner operands.
+
+2019-06-05 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/90726
+ * tree-ssa-loop-niter.c (expand_simple_operations): Do not
+ turn an expression graph into a tree.
+
+2019-06-05 Jakub Jelinek <jakub@redhat.com>
+
+ * omp-expand.c (struct omp_region): Add has_lastprivate_conditional
+ member.
+ (expand_parallel_call): If region->inner->has_lastprivate_conditional,
+ treat it like explicit monotonic schedule modifier.
+ (expand_omp_for): Initialize has_lastprivate_conditional.
+ If fd.lastprivate_conditional != 0, treat it like explicit monotonic
+ schedule modifier.
+
+ * omp-low.c (lower_rec_input_clauses): For lastprivate conditional
+ references, lookup in in hash map MEM_REF operand instead of the
+ MEM_REF itself.
+ (lower_omp_1): When looking for lastprivate conditional assignments,
+ handle MEM_REFs with REFERENCE_TYPE operands.
+
+ * omp-low.c (lower_rec_input_clauses): Force max_vf if is_simd and
+ on privatization clauses OMP_CLAUSE_DECL is privatized by reference
+ and references a VLA. Handle references to non-VLAs if is_simd
+ all privatization clauses like reductions.
+ (lower_rec_input_clauses) <case do_private, case do_firstprivate>:
+ If omp_is_reference, use always omp simd arrays and set
+ DECL_VALUE_EXPR in that case, if lower_rec_simd_input_clauses
+ fails, emit reference initialization.
+
+2019-06-05 Hongtao Liu <hongtao.liu@intel.com>
+
+ PR target/89803
+ * config/i386/avx512dqintrin.h (_mm_mask_fpclass_ss_mask,
+ _mm_mask_fpclass_sd_mask): New intrinsics.
+ (_mm_fpclass_ss_mask, _mm_fpclass_sd_mask): Modified, use new builtins.
+ * config/i386/i386-builtin.def
+ (__builtin_ia32_fpclassss_mask, __builtin_ia32_fpclasssd_mask):
+ New builtins.
+ (__builtin_ia32_fpclassss, __builtin_ia32_fpclasssd): Deleted.
+ * config/i386/i386-builtin-types.def (DEF_FUNCTION_TYPE (QI, V2DF, INT),
+ DEF_FUNCTION_TYPE (QI, V4SF, INT)): Deleted.
+ * config/i386/i386-expand.c (case QI_FTYPE_V4SF_INT,
+ case QI_FTYPE_V2SF_INT): Ditto.
+ * config/i386/sse.md
+ (define_insn "avx512dq_vmfpclass<mode><mask_scalar_merge_name>):
+ Extended to insnstructions with mask operands.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/constraints.md (define_register_constraint "wp"):
+ Delete.
+ (define_register_constraint "wq"): Delete.
+ * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
+ (rs6000_init_hard_regno_mode_ok): Adjust.
+ * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
+ RS6000_CONSTRAINT_wp and RS6000_CONSTRAINT_wq.
+ * config/rs6000/vsx.md (define_mode_attr VSr3): Delete.
+ (define_mode_attr VSa): Delete.
+ (define_mode_attr VSisa): New.
+ (rest of file): Adjust.
+ * doc/md.texi (Machine Constraints): Adjust.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.md (define_attr "isa"): Add p9kf and p9tf.
+ (define_attr "enabled"): Handle those new isa values.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/vsx.md (define_mode_attr VSr4): Delete.
+ (define_mode_attr VSr5): Delete.
+ (define_mode_attr VStype_sqrt): Delete.
+ (define_mode_iterator VSX_SPDP): Delete.
+ (define_mode_attr VS_spdp_res): Delete.
+ (define_mode_attr VS_spdp_insn): Delete.
+ (define_mode_attr VS_spdp_type): Delete.
+ (*vsx_sqrt<mode>2): Adjust.
+ (vsx_<VS_spdp_insn>): Delete, split to...
+ (vsx_xscvdpsp): ... this. New. And...
+ (vsx_xvcvspdp): ... this. New. And...
+ (vsx_xvcvdpsp): ... this. New.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.md (define_mode_attr sd): Add values for V4SF
+ and V2DF.
+ * config/rs6000/vsx.md (define_mode_attr VSs): Delete.
+ (rest of file): Adjust.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/vsx.md (vsx_<VS_spdp_insn>): Use wa instead of <VSa>.
+ (vsx_extract_<mode>_var): Ditto.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/vsx.md: Replace all <VSa> that are used with VSX_TI
+ with just "wa".
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/constraints.md (define_register_constraint "ww"):
+ Delete.
+ * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
+ (rs6000_init_hard_regno_mode_ok): Adjust.
+ * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
+ RS6000_CONSTRAINT_ww.
+ * config/rs6000/rs6000.md: Adjust.
+ * config/rs6000/vsx.md: Adjust.
+ * doc/md.texi (Machine Constraints): Adjust.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.md (SFDF, SFDF2): Adjust comments.
+ (define_mode_attr sd): New.
+ (define_mode_attr s): New.
+ (define_mode_attr Ftrad): Delete.
+ (define_mode_attr Fvsx): Delete.
+ (define_mode_attr Fs): Delete.
+ (rest of file): Use the new mode attributes.
+ * config.rs6000/vsx.md: Use the new mode attributes.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/vsx.md: Replace all <VSa> that are used with VSX_W
+ with just "wa".
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/vsx.md (define_mode_attr VSr2): Delete.
+ (rest of file): Replace all <VSa>, <VSr>, <VSr2>, and <VSr3> that are
+ used with VSX_B, VSX_D, or VSX_F, with just "wa".
+
+2019-06-04 Bill Schmidt <wschmidt@linux.ibm.com>
+
+ PR target/78263
+ * config/rs6000/altivec.h: Don't #define vector, pixel, bool for
+ C++ with strict ANSI requirements.
+
+2019-06-04 Marc Glisse <marc.glisse@inria.fr>
+
+ * tree-ssa-loop-niter.c (number_of_iterations_ne): Skip
+ computations when step is 1.
+
+2019-06-04 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/constraints.md (define_register_constraint "wf"):
+ Delete.
+ * config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
+ (rs6000_init_hard_regno_mode_ok): Adjust.
+ * config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
+ RS6000_CONSTRAINT_wf.
+ * config/rs6000/rs6000.md: Adjust.
+ * config/rs6000/vsx.md: Adjust.
+ * doc/md.texi (Machine Constraints): Adjust.
+
2019-06-04 Andrew Pinski <apinski@marvell.com>
* config/aarch64/aarch64.c (aarch64_asan_shadow_offset):