| 2023-07-07 Release Manager |
| |
| * GCC 10.5.0 released. |
| |
| 2023-06-28 liuhongt <hongtao.liu@intel.com> |
| |
| * config/i386/i386-features.c (pass_insert_vzeroupper:gate): |
| Move flag_expensive_optimizations && !optimize_size to .. |
| * config/i386/i386-options.c (ix86_option_override_internal): |
| .. this, it makes -mvzeroupper independent of optimization |
| level, but still keeps the behavior of architecture |
| tuning(emit_vzeroupper) unchanged. |
| (rest_of_handle_insert_vzeroupper): Remove |
| flag_expensive_optimizations && !optimize_size. |
| |
| 2023-06-20 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2023-06-20 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/109932 |
| * config/rs6000/rs6000-builtin.def (BU_VSX_MISC_2): New macro. |
| ({un,}pack_vector_int128): Use BU_VSX_MISC_2 instead of |
| BU_P7_MISC_2. |
| |
| 2023-06-19 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2023-06-12 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/110011 |
| * config/rs6000/rs6000.c (output_toc): Use the mode of the 128-bit |
| floating constant itself for real_to_target call. |
| |
| 2023-06-09 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2023-06-02 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR target/110044 |
| * config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align): |
| Make sure that we do not have a cap on field alignment before altering |
| the struct layout based on the type alignment of the first entry. |
| |
| 2023-06-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2023-06-01 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR target/109954 |
| * doc/invoke.texi (x86 Options): Fix description of -m32 option. |
| |
| 2023-05-22 Michael Meissner <meissner@linux.ibm.com> |
| |
| PR target/70243 |
| * config/rs6000/vsx.md (vsx_fmav4sf4): Do not generate vmaddfp. Back |
| port from master 04/10/2023. |
| (vsx_nfmsv4sf4): Do not generate vnmsubfp. |
| |
| 2023-05-21 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-12-24 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config.gcc: Emit L2_MAX_OFILE_ALIGNMENT with suitable |
| values for the host. |
| * config/darwin.c (darwin_emit_common): Error for alignment |
| values > 32768. |
| * config/darwin.h (MAX_OFILE_ALIGNMENT): Rework to use the |
| configured L2_MAX_OFILE_ALIGNMENT. |
| |
| 2023-05-09 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-05-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/109778 |
| * wide-int.h (wi::lrotate, wi::rrotate): Call wi::lrshift on |
| wi::zext (x, width) rather than x if width != precision, rather |
| than using wi::zext (right, width) after the shift. |
| * tree-ssa-ccp.c (bit_value_binop): Call wi::ext on the results |
| of wi::lrotate or wi::rrotate. |
| |
| 2023-05-04 Richard Biener <rguenther@suse.de> |
| |
| Revert: |
| 2023-02-07 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106809 |
| * tree-ssa-sccvn.c (dominaged_by_p_w_unex): Check we have |
| more than one successor before doing extra work. |
| |
| 2023-05-03 Anthony Sharp <anthonysharp15@gmail.com> |
| |
| Backported from master: |
| 2021-08-27 Anthony Sharp <anthonysharp15@gmail.com> |
| |
| * symbol-summary.h: Added missing template keyword. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/109410 |
| * tree-ssa-reassoc.c (build_and_add_sum): Split edge from entry |
| block if first statement of the function is a call to returns_twice |
| function. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-03-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/106190 |
| * sanopt.c (pass_sanopt::execute): Return TODO_cleanup_cfg if any |
| of the IFN_{UB,HWA,A}SAN_* internal fns are lowered. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-03-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR ipa/105685 |
| * predict.c (compute_function_frequency): Don't call |
| warn_function_cold if function already has cold attribute. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-03-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/105554 |
| * function.h (push_struct_function): Add ABSTRACT_P argument defaulted |
| to false. |
| * function.c (push_struct_function): Add ABSTRACT_P argument, pass it |
| to allocate_struct_function instead of false. |
| * tree-inline.c (initialize_cfun): Don't copy DECL_ARGUMENTS |
| nor DECL_RESULT here. Pass true as ABSTRACT_P to |
| push_struct_function. Call targetm.target_option.relayout_function |
| after it. |
| (tree_function_versioning): Formatting fix. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-03-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/108685 |
| * omp-expand.c (expand_omp_for_ordered_loops): Add L0_BB argument, |
| use its loop_father rather than BODY_BB's loop_father. |
| (expand_omp_for_generic): Adjust expand_omp_for_ordered_loops caller. |
| If broken_loop with ordered > collapse and at least one of those |
| extra loops aren't guaranteed to have at least one iteration, change |
| l0_bb's loop_father to entry_bb's loop_father. Set cont_bb's |
| loop_father to l0_bb's loop_father rather than l1_bb's. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-03-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR testsuite/108973 |
| * selftest-diagnostic.c |
| (test_diagnostic_context::test_diagnostic_context): Set |
| caret_max_width to 80. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-02-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/108854 |
| * cgraphclones.c (duplicate_thunk_for_node): If no parameter |
| changes are needed, copy at least DECL_ARGUMENTS PARM_DECL |
| nodes and adjust their DECL_CONTEXT. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-02-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/108881 |
| * config/i386/i386-builtin.def (__builtin_ia32_cvtne2ps2bf16_v16hi, |
| __builtin_ia32_cvtne2ps2bf16_v16hi_mask, |
| __builtin_ia32_cvtne2ps2bf16_v16hi_maskz, |
| __builtin_ia32_cvtne2ps2bf16_v8hi, |
| __builtin_ia32_cvtne2ps2bf16_v8hi_mask, |
| __builtin_ia32_cvtne2ps2bf16_v8hi_maskz, |
| __builtin_ia32_cvtneps2bf16_v8sf_mask, |
| __builtin_ia32_cvtneps2bf16_v8sf_maskz, |
| __builtin_ia32_cvtneps2bf16_v4sf_mask, |
| __builtin_ia32_cvtneps2bf16_v4sf_maskz, |
| __builtin_ia32_dpbf16ps_v8sf, __builtin_ia32_dpbf16ps_v8sf_mask, |
| __builtin_ia32_dpbf16ps_v8sf_maskz, __builtin_ia32_dpbf16ps_v4sf, |
| __builtin_ia32_dpbf16ps_v4sf_mask, |
| __builtin_ia32_dpbf16ps_v4sf_maskz): Require also |
| OPTION_MASK_ISA_AVX512VL. |
| |
| 2023-05-03 Andrew Pinski <apinski@marvell.com> |
| |
| Backported from master: |
| 2023-02-09 Andrew Pinski <apinski@marvell.com> |
| |
| PR tree-optimization/108688 |
| * match.pd (bit_field_ref [bit_insert]): Avoid generating |
| BIT_FIELD_REFs of non-mode-precision integral operands. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-02-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/108435 |
| * tree-nested.c (convert_nonlocal_omp_clauses) |
| <case OMP_CLAUSE_LASTPRIVATE>: If info->new_local_var_chain and *seq |
| is not a GIMPLE_BIND, wrap the sequence into a new GIMPLE_BIND |
| before calling declare_vars. |
| (convert_nonlocal_omp_clauses) <case OMP_CLAUSE_LINEAR>: Merge |
| with the OMP_CLAUSE_LASTPRIVATE handling except for whether |
| seq is initialized to &OMP_CLAUSE_LASTPRIVATE_GIMPLE_SEQ (clause) |
| or &OMP_CLAUSE_LINEAR_GIMPLE_SEQ (clause). |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-02-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/108573 |
| * ree.c (combine_reaching_defs): Don't return false for paradoxical |
| subregs in DEBUG_INSNs. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-01-31 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/108596 |
| * bb-reorder.c (fix_up_fall_thru_edges): Handle the case where cur_bb |
| ends with asm goto and has a crossing fallthrough edge to the same bb |
| that contains at least one of its labels by restoring EDGE_CROSSING |
| flag even on possible edge from cur_bb to new_bb successor. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-01-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR other/108560 |
| * doc/extend.texi: Fix up return type of __builtin_va_arg_pack_len |
| from size_t to int. |
| |
| 2023-05-03 Eric Biggers <ebiggers@google.com> |
| |
| Backported from master: |
| 2023-01-24 Eric Biggers <ebiggers@google.com> |
| |
| PR bootstrap/90543 |
| * optc-save-gen.awk: Fix copy-and-paste error. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2023-01-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/108237 |
| * generic-match-head.c: Include tree-pass.h. |
| (canonicalize_math_p): Define to false if cfun and |
| cfun->curr_properties has PROP_gimple_opt_math resp. PROP_gimple_lvec |
| property set. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-12-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/108068 |
| * tree.h (real_maybe_zerop): Declare. |
| * tree.c (real_maybe_zerop): Define. |
| * tree-ssa-dom.c (record_edge_info): Use it instead of |
| real_zerop or TREE_CODE (op1) == SSA_NAME || real_zerop. Always set |
| can_infer_simple_equiv to false for decimal floating point types. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-12-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/108193 |
| * cse.c (compute_const_anchors): Change n type to |
| unsigned HOST_WIDE_INT, adjust comparison against it to avoid |
| warnings. Formatting fix. |
| (insert_const_anchor): Use gen_int_mode instead of GEN_INT. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-12-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/106751 |
| * loop-invariant.c (move_invariant_reg): If preheader bb ends |
| with a JUMP_INSN, split the preheader edge and emit invariants |
| into the new preheader basic block. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-12-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/107997 |
| * tree-ssa-loop-ivopts.c: Include cfganal.h. |
| (create_new_iv) <case IP_END>: If ip_end_pos bb is non-empty and ends |
| with a stmt which ends bb, instead of adding iv update after it split |
| the latch edge and insert iterator into the new latch bb. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-12-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/106719 |
| * cfgbuild.c (find_bb_boundaries): If there are NOTEs in between |
| debug_insn (seen after flow_transfer_insn) and insn, move NOTEs |
| before all the DEBUG_INSNs and split after NOTEs. If there are |
| other insns like jump table data, clear debug_insn. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-11-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/107317 |
| * asan.c: Include diagnostic-core.h. |
| (asan_emit_stack_protection): Return NULL early if seen_error (). |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-11-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107748 |
| * config/i386/smmintrin.h (_mm_extract_ps): Uglify names of local |
| variables and union members. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-11-20 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/107183 |
| * reg-stack.c (next_flags_user): Add DEBUG_SEEN argument. |
| If >= 0 and a DEBUG_INSN would be otherwise returned, set |
| DEBUG_SEEN to 1 and ignore it. |
| (swap_rtx_condition): Add DEBUG_SEEN argument. In >= 0 |
| mode only set DEBUG_SEEN to 1 if problematic DEBUG_ISNSs |
| were seen and revert all changes on success in that case. |
| Don't try to recog_memoized DEBUG_INSNs. |
| (compare_for_stack_reg): Adjust swap_rtx_condition caller. |
| If it returns true and debug_seen is 1, call swap_rtx_condition |
| again with debug_seen -1. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-09-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/107001 |
| * omp-low.c (lower_omp_taskgroup): Don't add GOMP_RETURN statement |
| at the end. |
| * omp-expand.c (build_omp_regions_1): Clarify GF_OMP_TARGET_KIND_DATA |
| is not stand-alone directive. For GIMPLE_OMP_TASKGROUP, also don't |
| update parent. |
| (omp_make_gimple_edges) <case GIMPLE_OMP_TASKGROUP>: Reset |
| cur_region back after new_omp_region. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-07-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/106261 |
| * cgraphunit.c (cgraph_node::assemble_thunks_and_aliases): Don't |
| output asm thunks for -dx. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-07-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/106144 |
| * wide-int.cc (wi::shifted_mask): If end >= prec, return right after |
| emitting element for shift or if shift is 0 first element after start. |
| (wide_int_cc_tests): Add tests for equivalency of wi::mask and |
| wi::shifted_mask with 0 start. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-06-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/106032 |
| * ifcvt.c (noce_try_sign_mask): Punt if !t_unconditional, and |
| t may_trap_or_fault_p, even if it is cheap. |
| |
| 2023-05-03 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-06-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/106030 |
| * expr.c (expand_cond_expr_using_cmove): Pass NULL_RTX instead of |
| temp to expand_operands if mode has been promoted. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2023-01-31 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| PR target/108589 |
| * config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Check |
| REG_P on SET_DEST. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2023-04-17 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| Di Zhao <di.zhao@amperecomputing.com> |
| |
| * config/aarch64/aarch64-tuning-flags.def (AARCH64_EXTRA_TUNING_OPTION): |
| Add AARCH64_EXTRA_TUNE_NO_LDP_COMBINE. |
| * config/aarch64/aarch64.c (aarch64_operands_ok_for_ldpstp): |
| Check for the above tuning option when processing loads. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2023-03-27 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| Jiangning Liu <jiangning.liu@amperecomputing.com> |
| Manolis Tsamis <manolis.tsamis@vrull.eu> |
| |
| * config/aarch64/aarch64.c: Update vector costs for ampere1. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2022-11-14 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add ampere1a. |
| * config/aarch64/aarch64-cost-tables.h: Add ampere1a_extra_costs. |
| * config/aarch64/aarch64-fusion-pairs.def (AARCH64_FUSION_PAIR): |
| Define a new fusion pair for A+B+1/A-B-1 (i.e., add/subtract two |
| registers and then +1/-1). |
| * config/aarch64/aarch64-tune.md: Regenerate. |
| * config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Implement |
| idiom-matcher for the new fusion pair. |
| * doc/invoke.texi: Add ampere1a. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2022-10-06 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/aarch64/aarch64-cores.def (AARCH64_CORE): Update |
| Ampere-1 core entry. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2022-10-06 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/aarch64/driver-aarch64.c (readline): Fix off-by-one. |
| |
| 2023-04-18 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| Backported from master: |
| 2021-11-03 Philipp Tomsich <philipp.tomsich@vrull.eu> |
| |
| * config/aarch64/aarch64-cores.def (AARCH64_CORE): New Ampere-1 |
| core. |
| * config/aarch64/aarch64-tune.md: Regenerate. |
| * config/aarch64/aarch64-cost-tables.h: Add extra costs for |
| Ampere-1. |
| * config/aarch64/aarch64.c: Add tuning structures for Ampere-1. |
| * doc/invoke.texi: Add documentation for Ampere-1 core. |
| |
| 2023-04-17 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2023-04-04 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/108699 |
| * config/rs6000/altivec.md (*p9v_parity<mode>2): Rename to ... |
| (rs6000_vprtyb<mode>2): ... this. |
| * config/rs6000/rs6000-builtin.def (VPRTYBD): Replace parityv2di2 with |
| rs6000_vprtybv2di2. |
| (VPRTYBW): Replace parityv4si2 with rs6000_vprtybv4si2. |
| (VPRTYBQ): Replace parityv1ti2 with rs6000_vprtybv1ti2. |
| * config/rs6000/vector.md (parity<mode>2 with VEC_IP): Expand with |
| popcountv16qi2 and the corresponding rs6000_vprtyb<mode>2. |
| |
| 2023-02-24 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| Backported from master: |
| 2023-02-24 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/riscv/t-rtems: Keep only -mcmodel=medany 64-bit multilibs. |
| Add non-compact 32-bit multilibs. |
| |
| 2023-02-20 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2023-02-06 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/104921 |
| * config/aarch64/aarch64-simd.md (aarch64_bfmlal<bt>_lane<q>v4sf): |
| Use correct constraint for operand 3. |
| |
| 2023-02-13 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2023-01-18 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/108348 |
| * config/rs6000/rs6000.c (rs6000_opaque_type_invalid_use_p): Add the |
| support for invalid uses of MMA opaque type in function arguments. |
| |
| 2023-02-13 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2023-01-16 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/108272 |
| * config/rs6000/rs6000.c (rs6000_opaque_type_invalid_use_p): Add the |
| support for invalid uses in inline asm, factor out the checking and |
| erroring to lambda function check_and_error_invalid_use. |
| |
| 2023-02-07 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-09-02 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106809 |
| * tree-ssa-sccvn.c (dominaged_by_p_w_unex): Check we have |
| more than one successor before doing extra work. |
| |
| 2023-02-03 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2022-12-01 Alex Coplan <alex.coplan@arm.com> |
| |
| * varasm.c (assemble_variable): Fix type confusion bug when |
| checking for ".vtable_map_vars" section. |
| |
| 2023-01-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-11-11 Richard Biener <rguenther@suse.de> |
| Nikita Voronov <nik_1357@mail.ru> |
| |
| PR tree-optimization/107554 |
| * tree-ssa-strlen.c (strlen_pass::count_nonzero_bytes): |
| Use unsigned HOST_WIDE_INT type for the strlen. |
| |
| 2023-01-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-10-21 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107323 |
| * tree-loop-distribution.c (pg_unmark_merged_alias_ddrs): |
| New function. |
| (loop_distribution::break_alias_scc_partitions): Revert |
| postorder save/restore from the PR94125 fix. Instead |
| make sure to not ignore edges from SCCs we are going to |
| merge. |
| |
| 2023-01-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-10-06 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107107 |
| * tree-ssa-sccvn.c (visit_reference_op_store): Do not |
| affect value-numbering when doing the tail merging |
| MODIFY_EXPR lookup. |
| |
| 2023-01-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-09-14 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106934 |
| * tree-ssa.c (non_rewritable_mem_ref_base): Avoid BIT_FIELD_REFs |
| of bitfields. |
| (maybe_rewrite_mem_ref_base): Likewise. |
| |
| 2023-01-25 Christophe Lyon <christophe.lyon@arm.com> |
| |
| Backported from master: |
| 2023-01-12 Christophe Lyon <christophe.lyon@arm.com> |
| Richard Sandiford <richard.sandiford@arm.com> |
| |
| * config/aarch64/aarch64.c (aarch64_function_arg_alignment): Fix |
| comment. |
| (aarch64_layout_arg): Factorize warning conditions. |
| (aarch64_function_arg_boundary): Fix typo. |
| * function.c (currently_expanding_function_start): New variable. |
| (expand_function_start): Handle |
| currently_expanding_function_start. |
| * function.h (currently_expanding_function_start): Declare. |
| |
| 2023-01-24 Sergei Trofimovich <siarheit@google.com> |
| |
| Backported from master: |
| 2022-08-16 Sergei Trofimovich <siarheit@google.com> |
| |
| PR driver/106624 |
| * gcc.c (driver::detect_jobserver): Allocate storage xputenv() |
| argument using xstrdup(). |
| |
| 2023-01-05 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/106736 |
| * config/rs6000/mma.md (define_expand movoo): Call function |
| rs6000_opaque_type_invalid_use_p to check and emit error message for |
| the invalid use of opaque type. |
| (define_expand movxo): Likewise. |
| * config/rs6000/rs6000-protos.h |
| (rs6000_opaque_type_invalid_use_p): New function declaration. |
| (currently_expanding_gimple_stmt): New extern declaration. |
| * config/rs6000/rs6000.c (rs6000_opaque_type_invalid_use_p): New |
| function. |
| |
| 2022-12-22 Martin Liska <mliska@suse.cz> |
| |
| Backported from master: |
| 2022-08-10 Martin Liska <mliska@suse.cz> |
| |
| * opts-jobserver.h: Add one member. |
| * opts-common.c (jobserver_info::jobserver_info): Parse FIFO |
| format of --jobserver-auth. |
| |
| 2022-12-22 Martin Liska <mliska@suse.cz> |
| |
| Backported from master: |
| 2022-08-10 Martin Liska <mliska@suse.cz> |
| |
| * gcc.c (driver::detect_jobserver): Remove and move to |
| jobserver.h. |
| * lto-wrapper.c (jobserver_active_p): Likewise. |
| (run_gcc): Likewise. |
| * opts-jobserver.h: New file. |
| * opts-common.c (jobserver_info::jobserver_info): New function. |
| |
| 2022-12-15 Sebastian Pop <spop@amazon.com> |
| |
| PR target/98776 |
| * config/aarch64/aarch64-protos.h (aarch64_output_patchable_area): |
| Declared. |
| * config/aarch64/aarch64.c (aarch64_print_patchable_function_entry): |
| Emit an UNSPECV_PATCHABLE_AREA pseudo instruction. |
| (aarch64_output_patchable_area): New. |
| * config/aarch64/aarch64.md (UNSPECV_PATCHABLE_AREA): New. |
| (patchable_area): Define. |
| |
| 2022-12-01 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/107863 |
| * config/i386/i386-expand.c (ix86_expand_vec_set_builtin): |
| Convert op1 to target mode whenever mode mismatch. |
| |
| 2022-11-30 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md (addvdi3): Force operand 2 to a register. |
| Remove "addi,tsv,*" instruction from unamed pattern. |
| (subvdi3): Force operand 1 to a register. |
| Remove "subi,tsv" instruction from from unamed pattern. |
| |
| 2022-11-29 Max Filippov <jcmvbkbc@gmail.com> |
| |
| Backported from master: |
| 2022-11-08 Max Filippov <jcmvbkbc@gmail.com> |
| |
| PR rtl-optimization/107482 |
| * ira-color.c (assign_hard_reg): Only call |
| update_costs_from_copies when retry_p is false. |
| |
| 2022-11-19 Thomas Schwinge <thomas@codesourcery.com> |
| |
| Backported from master: |
| 2022-11-19 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * config/nvptx/nvptx.h (STARTFILE_SPEC): Fix 'crt0.o' for |
| '-mmainkernel'. |
| |
| 2022-11-14 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/107485 |
| * tree-inline.c (remap_gimple_stmt): Use correct type for |
| split out condition of [VEC_]COND_EXPRs. |
| |
| 2022-11-08 H.J. Lu <hjl.tools@gmail.com> |
| |
| Backported from master: |
| 2022-10-25 H.J. Lu <hjl.tools@gmail.com> |
| |
| PR target/107304 |
| * expr.c (get_inner_reference): Always use TYPE_MODE for vector |
| field with vector raw mode. |
| |
| 2022-11-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2022-11-05 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR c/41041 |
| * doc/cppopts.texi: Document -fwide-exec-charset defaults |
| correctly. |
| |
| 2022-10-25 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| |
| Backported from master: |
| 2022-10-19 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| |
| PR target/106355 |
| * config/s390/s390.c (s390_call_saved_register_used): For a |
| parameter with BLKmode fix determining number of consecutive |
| registers. |
| |
| 2022-10-25 Martin Liska <mliska@suse.cz> |
| |
| Backported from master: |
| 2022-10-24 Martin Liska <mliska@suse.cz> |
| |
| PR target/107364 |
| * common/config/i386/i386-cpuinfo.h (enum processor_vendor): |
| Reorder enum values as BUILTIN_VENDOR_MAX should not point |
| in the middle of the valid enum values. |
| |
| 2022-10-21 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/107336 |
| * optabs.c (expand_vec_cond_expr): Query both VCOND and VCONDU for |
| EQ and NE. |
| |
| 2022-10-21 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2022-10-20 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * config/aarch64/aarch64-sve.md (*aarch64_brk<brk_op>_cc): Remove |
| merging alternative. |
| (*aarch64_brk<brk_op>_ptest): Likewise. |
| |
| 2022-10-21 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2022-10-20 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * config/aarch64/iterators.md (SVE_BRKP): New iterator. |
| * config/aarch64/aarch64-sve.md (*aarch64_brkn_cc): New pattern. |
| (*aarch64_brkn_ptest): Likewise. |
| (*aarch64_brk<brk_op>_cc): Restrict to SVE_BRKP. |
| (*aarch64_brk<brk_op>_ptest): Likewise. |
| |
| 2022-10-21 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * config/aarch64/aarch64.h (AARCH64_FL_FOR_ARCH8_3): Add |
| AARCH64_FL_RCPC. |
| (AARCH64_ISA_RCPC): New macro. |
| * config/aarch64/aarch64-cores.def (thunderx3t110, zeus, neoverse-v1) |
| (neoverse-512tvb, saphira): Remove RCPC from these Armv8.3-A+ cores. |
| * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): Define |
| __ARM_FEATURE_RCPC when appropriate. |
| |
| 2022-10-20 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2022-09-26 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/96072 |
| * config/rs6000/rs6000-logue.c (rs6000_emit_epilogue): Update the |
| condition for adding REG_CFA_DEF_CFA reg note with |
| frame_pointer_needed_indeed. |
| |
| 2022-10-17 Pat Haugen <pthaugen@linux.ibm.com> |
| |
| PR target/99685 |
| * config/rs6000/rs6000-call.c (rs6000_function_arg_advance_1): Bump |
| register count when not splitting IEEE 128-bit Complex. |
| |
| 2022-10-14 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-08-10 Richard Biener <rguenther@suse.de> |
| |
| PR lto/106540 |
| PR lto/106334 |
| * lto-streamer-in.c (lto_read_tree_1): Use lto_input_tree_1 |
| to input DECL_INITIAL, avoiding to commit drefs. |
| |
| 2022-10-14 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-08-10 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106513 |
| * gimple-ssa-store-merging.c (do_shift_rotate): Use uint64_t |
| for head_marker. |
| |
| 2022-10-14 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-07-19 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/106331 |
| * builtins.c (get_memory_rtx): Compute alignment from |
| the original address and set MEM_OFFSET to unknown when |
| we create a MEM_EXPR from the base object of the address. |
| |
| 2022-10-14 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-07-01 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106131 |
| * tree-ssa-sccvn.c (vn_reference_lookup_3): Force alias-set |
| zero when offsetting the read looking through an aggregate |
| copy. |
| |
| 2022-10-14 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-06-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/106112 |
| * tree-ssa-sccvn.c (valueized_wider_op): Properly extend |
| a constant operand according to its type. |
| |
| 2022-10-14 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/107248 |
| * config/sparc/sparc.c (sparc_expand_prologue): Emit a frame |
| blockage for leaf functions. |
| (sparc_flat_expand_prologue): Emit frame instead of full blockage. |
| (sparc_expand_epilogue): Emit a frame blockage for leaf functions. |
| (sparc_flat_expand_epilogue): Emit frame instead of full blockage. |
| |
| 2022-10-03 Sergei Trofimovich <siarheit@google.com> |
| |
| Backported from master: |
| 2022-10-03 Sergei Trofimovich <siarheit@google.com> |
| |
| PR target/107064 |
| * config/i386/t-i386: Add build-time dependencies against |
| i386-builtin-types.inc to i386-builtins.o, i386-expand.o, |
| i386-features.o. |
| |
| 2022-09-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| * config/aarch64/aarch64-cores.def (neoverse-v2): New entry. |
| * config/aarch64/aarch64-tune.md: Regenerate. |
| * doc/invoke.texi (AArch64 Options): Document neoverse-v2. |
| |
| 2022-09-21 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2022-09-20 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR target/106491 |
| * config/aarch64/aarch64-sve-builtins.cc (scalar_types) |
| (acle_vector_types, acle_svpattern, acle_svprfop): Add GTY |
| markup to (new) extern declarations instead of to the main |
| definition. |
| |
| 2022-09-14 Tom de Vries <tdevries@suse.de> |
| |
| Backported from master: |
| 2022-02-01 Tom de Vries <tdevries@suse.de> |
| |
| * config/nvptx/nvptx.c (nvptx_single): Use nvptx_uniform_warp_check. |
| * config/nvptx/nvptx.md (define_c_enum "unspecv"): Add |
| UNSPECV_UNIFORM_WARP_CHECK. |
| (define_insn "nvptx_uniform_warp_check"): New define_insn. |
| |
| 2022-09-14 Tom de Vries <tdevries@suse.de> |
| |
| Backported from master: |
| 2022-02-01 Tom de Vries <tdevries@suse.de> |
| |
| * config/nvptx/nvptx.c (nvptx_single): Use nvptx_warpsync. |
| * config/nvptx/nvptx.md (define_c_enum "unspecv"): Add |
| UNSPECV_WARPSYNC. |
| (define_insn "nvptx_warpsync"): New define_insn. |
| |
| 2022-09-14 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * config/nvptx/nvptx.h (TARGET_PTX_6_0): '#define' to 'false'. |
| |
| 2022-09-13 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2022-09-01 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/101322 |
| * config/rs6000/rs6000-call.c (rs6000_gimple_fold_mma_builtin): |
| Enforce the use of a valid MMA pointer type. |
| |
| 2022-09-08 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/rs6000/rtems.h (CPP_OS_DEFAULT_SPEC): Define __PPC_VRSAVE__ if |
| -mvrsave is present. |
| * config/rs6000/t-rtems: Add -mvrsave multilib variants for |
| -mcpu=e6500. |
| |
| 2022-08-30 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2022-08-28 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/106017 |
| * config/rs6000/rs6000.c (rs6000_invalid_conversion): Remove handling |
| of MMA pointer conversions. |
| |
| 2022-08-24 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2022-08-16 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/103353 |
| * config/rs6000/mma.md (define_expand movpoi): Move TARGET_MMA condition |
| check to preparation statements and add handlings for !TARGET_MMA. |
| (define_expand movpxi): Likewise. |
| |
| 2022-08-16 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| Backported from master: |
| 2022-04-21 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR target/103197 |
| PR target/102146 |
| * config/rs6000/rs6000.md (zero_extendqi<mode>2 for EXTQI): Disparage |
| the "Z" alternatives in {l,st}{f,xs}iwzx. |
| (zero_extendhi<mode>2 for EXTHI): Ditto. |
| (zero_extendsi<mode>2 for EXTSI): Ditto. |
| (*movsi_internal1): Ditto. |
| (*mov<mode>_internal1 for QHI): Ditto. |
| (movsd_hardfloat): Ditto. |
| |
| 2022-08-02 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2022-07-25 Peter Bergner <bergner@linux.ibm.com> |
| Kewen Lin <linkw@linux.ibm.com> |
| |
| PR testsuite/106345 |
| * config/rs6000/rs6000.h (DRIVER_SELF_SPECS): Adjust -mdejagnu-cpu |
| to filter out all -mtune options. |
| |
| 2022-08-02 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2022-07-26 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/106091 |
| * config/rs6000/rs6000-p8swap.c (replace_swapped_aligned_store): Copy |
| REG_EH_REGION when replacing one store insn having it. |
| (replace_swapped_aligned_load): Likewise. |
| |
| 2022-07-25 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| Backported from master: |
| 2022-07-25 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| * config/rs6000/rtems.h (CPLUSPLUS_CPP_SPEC): Undef. |
| |
| 2022-07-22 Surya Kumari Jangala <jskumari@linux.vnet.ibm.com> |
| |
| Backported from master: |
| 2022-06-14 Surya Kumari Jangala <jskumari@linux.ibm.com> |
| |
| PR rtl-optimization/105041 |
| * regrename.c (check_new_reg_p): Use nregs value from du chain. |
| |
| 2022-07-13 Martin Jambor <mjambor@suse.cz> |
| |
| Backported from master: |
| 2022-07-04 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/105860 |
| * tree-sra.c (build_reconstructed_reference): Start expr |
| traversal only just below the outermost union. |
| |
| 2022-06-28 Release Manager |
| |
| * GCC 10.4.0 released. |
| |
| 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org> |
| |
| Backported from master: |
| 2022-06-24 Iain Buclaw <ibuclaw@gdcproject.org> |
| |
| * config/tilepro/gen-mul-tables.cc (tilegx_emit): Adjust loop |
| condition to avoid overflow. |
| |
| 2022-06-20 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backported from master: |
| 2022-06-17 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/105209 |
| * config/alpha/alpha-protos.h (alpha_store_data_bypass_p): New. |
| * config/alpha/alpha.c (alpha_store_data_bypass_p): New function. |
| (alpha_store_data_bypass_p_1): Ditto. |
| * config/alpha/ev4.md: Use alpha_store_data_bypass_p instead |
| of generic store_data_bypass_p. |
| (ev4_ist_c): Remove insn reservation. |
| |
| 2022-06-20 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backported from master: |
| 2022-06-17 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/105970 |
| * config/i386/i386.c (ix86_function_arg): Assert that |
| the mode of pointer argumet is equal to ptr_mode, not Pmode. |
| |
| 2022-06-20 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| Backported from master: |
| 2022-03-12 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR target/104829 |
| * config/rs6000/rs6000.c (rs6000_machine_from_flags): Don't output |
| "ppc" and "ppc64" based on rs6000_cpu. |
| |
| 2022-06-20 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| Backported from master: |
| 2022-03-04 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| * config/rs6000/rs6000.c (rs6000_machine_from_flags): Restructure a |
| bit. Handle most older CPUs. |
| |
| 2022-06-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-06-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/105998 |
| * varasm.c (narrowing_initializer_constant_valid_p): Check |
| SCALAR_INT_MODE_P instead of INTEGRAL_MODE_P, also break on |
| ! INTEGRAL_TYPE_P and do the same check also on op{0,1}'s type. |
| |
| 2022-06-20 Jan Hubicka <jh@suse.cz> |
| |
| Backported from master: |
| 2022-06-14 Jan Hubicka <hubicka@ucw.cz> |
| |
| PR ipa/105739 |
| * ipa-prop.c (ipa_load_from_parm_agg): Punt on volatile loads. |
| |
| 2022-06-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-05-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/105729 |
| * fold-const.c (fold_unary_loc): Don't optimize (X &) ((Y *) z + w) |
| to (X &) z + w if -fsanitize=null during GENERIC folding. |
| |
| 2022-06-16 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2022-06-15 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/105981 |
| * config/arm/arm.c (gen_cpymem_ldrd_strd): Rename low_reg and hi_reg |
| to first_reg and second_reg respectively. Initialize them correctly |
| when generating big-endian code. |
| |
| 2022-06-15 Simon Wright <simon@pushface.org> |
| |
| Backported from master: |
| 2022-06-12 Simon Wright <simon@pushface.org> |
| |
| PR target/104871 |
| * config/darwin-driver.c (darwin_find_version_from_kernel): If the OS |
| version is darwin20 (macOS 11) or greater, truncate the version to the |
| major number. |
| |
| 2022-06-15 Mark Mentovai <mark@mentovai.com> |
| |
| Backported from master: |
| 2022-06-12 Mark Mentovai <mark@mentovai.com> |
| |
| * config/darwin-c.c: Make -mmacosx-version-min more future-proof. |
| |
| 2022-06-15 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105726 |
| * gimple-ssa-warn-restrict.c (builtin_memref::set_base_and_offset): |
| Constrain array-of-flexarray case more. |
| |
| 2022-06-14 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/104637 |
| * lra-assigns.c (lra_split_hard_reg_for): Split hard regs as many |
| as possible on one subpass. |
| |
| 2022-06-13 Marek Polacek <polacek@redhat.com> |
| |
| Backported from master: |
| 2022-03-08 Marek Polacek <polacek@redhat.com> |
| |
| PR rtl-optimization/104777 |
| * rtl.c (classify_insn): For ASM_OPERANDS, return JUMP_INSN only if |
| ASM_OPERANDS_LABEL_VEC has at least one element. |
| |
| 2022-06-09 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-09-14 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * Makefile.in: Remove variables related to applying no-PIE |
| to the exes on $build. |
| * configure: Regenerate. |
| * configure.ac: Remove configuration related to applying |
| no-PIE to the exes on $build. |
| |
| 2022-06-06 Alan Modra <amodra@gmail.com> |
| |
| Backported from master: |
| 2020-10-24 Alan Modra <amodra@gmail.com> |
| |
| * config/rs6000/rs6000.c (rs6000_legitimate_address_p): Limit |
| AND addressing to just lvx/stvx style addresses. |
| |
| 2022-05-31 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin-sections.def (objc2_class_names_section, |
| objc2_method_names_section, objc2_method_types_section): New |
| * config/darwin.c (output_objc_section_asm_op): Output new |
| sections. (darwin_objc2_section): Select new sections where |
| used. |
| (darwin_label_is_anonymous_local_objc_name): Make |
| protocol class methods linker-visible. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-11-15 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR fortran/102992 |
| * config/darwin.h (TARGET_DTORS_FROM_CXA_ATEXIT): New. |
| * doc/tm.texi: Regenerated. |
| * doc/tm.texi.in: Add TARGET_DTORS_FROM_CXA_ATEXIT hook. |
| * ipa.c (cgraph_build_static_cdtor_1): Return the built |
| function decl. |
| (build_cxa_atexit_decl): New. |
| (build_dso_handle_decl): New. |
| (build_cxa_dtor_registrations): New. |
| (compare_cdtor_tu_order): New. |
| (build_cxa_atexit_fns): New. |
| (ipa_cdtor_merge): If dtors_from_cxa_atexit is set, |
| process the DTORs/CTORs accordingly. |
| (pass_ipa_cdtor_merge::gate): Also run if |
| dtors_from_cxa_atexit is set. |
| * target.def (dtors_from_cxa_atexit): New hook. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-07-09 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR target/100152 |
| * config/i386/i386-expand.c (ix86_expand_call): If a call is |
| to a non-local-binding, or local but to a public symbol, then |
| assume that it might be indirected via the lazy symbol binder. |
| Mark R10 and R10 as clobbered in that case. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| Vladimir Makarov <vmakarov@redhat.com> |
| |
| PR target/104117 |
| * config/rs6000/rs6000.c (darwin_rs6000_legitimate_lo_sum_const_p): |
| Check for UNSPEC_MACHOPIC_OFFSET wrappers on symbolic addresses when |
| emitting PIC code. |
| (legitimate_lo_sum_address_p): Likewise. |
| (rs6000_legitimize_address): Do not apply the TLS processing to |
| Darwin. |
| * config/rs6000/darwin.md (@machopic_high_<mode>): New. |
| (@machopic_low_<mode>): New. |
| * config/rs6000/predicates.md (macho_pic_address): New. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR target/80556 |
| * config/darwin-driver.c (darwin_driver_init): Handle exported |
| symbols and symbol lists (suppress automatic export of the TLS |
| symbols). |
| * config/darwin.c (darwin_rename_builtins): Remove workaround. |
| * config/darwin.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise. |
| (REAL_LIBGCC_SPEC): Handle revised library uses. |
| * config/darwin.opt (nodefaultexport): New. |
| * config/i386/darwin.h (PR80556_WORKAROUND): Remove. |
| * config/i386/darwin32-biarch.h (PR80556_WORKAROUND): Likewise. |
| * config/i386/darwin64-biarch.h (PR80556_WORKAROUND): Likewise. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin-driver.c (darwin_driver_init): Revise comments, handle |
| filelist and framework options in specs instead of code. Exit from the |
| option handling early if the command line is definitely enpty. |
| * config/darwin.h (SUBTARGET_DRIVER_SELF_SPECS): Update to handle link |
| specs that are really driver ones. Remove setting for the default content |
| of weak_reference_mismatches |
| (DARWIN_CC1_SPEC): Likewise. |
| (CPP_SPEC): Likewise. |
| (SYSROOT_SPEC): Append space. |
| (LINK_SYSROOT_SPEC): Remove most driver link specs. |
| (STANDARD_STARTFILE_PREFIX_2): Update link-related specs. |
| (STARTFILE_SPEC): Likewise. |
| (ASM_MMACOSX_VERSION_MIN_SPEC): Fix line wrap. |
| (ASM_SPEC): Update driver-related specs. |
| (ASM_FINAL_SPEC): Likewise. |
| (LINK_COMMAND_SPEC_A): Update 'r' handling to skip gomp and itm when r |
| or nodefaultlibs is given. |
| (DSYMUTIL_SPEC): Do not call dsymutil for '-r' link lines. |
| Update ordering of exclusions, remove duplicate 'v' addition |
| (collect2 will add this from the main command line). |
| * config/darwin.opt: Remove now unused option aliases. |
| * config/i386/darwin.h (EXTRA_ASM_OPTS): Ensure space after opt. |
| (ASM_SPEC): Update driver-related specs. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-09-19 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.h (LINK_COMMAND_SPEC_A): Use Darwin10 |
| unwinder shim as a convenience library. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-10-13 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * collect2.c (is_lto_object_file): Release simple-object |
| resources, close files. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-11-05 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.h (ASM_GENERATE_INTERNAL_LABEL): Add LTRAMP |
| to the list of symbol prefixes that must be made linker- |
| visible. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-08-27 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.c (finalize_ctors): Add a section-start linker- |
| visible symbol. |
| (finalize_dtors): Likewise. |
| * config/darwin.h (MIN_LD64_INIT_TERM_START_LABELS): New. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-08-17 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.c (darwin_file_end): Reset and reclaim the |
| section names table at the end of compile. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-01-02 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.h (MIN_LD64_NO_COAL_SECTS): Adjust. |
| Amend handling for LD64_VERSION fallback defaults. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * configure.ac: Handle --with-dsymutil in the same way as we |
| do for the assembler and linker. (DEFAULT_DSYMUTIL): New. |
| Extract the type and version for the dsymutil configured or |
| found by the default searches. |
| * config.in: Regenerated. |
| * configure: Regenerated. |
| * collect2.c (do_dsymutil): Handle locating dsymutil in the |
| same way as for the assembler and linker. |
| * config/darwin.h (DSYMUTIL): Delete. |
| * gcc.c: Report a configured dsymutil correctly. |
| * exec-tool.in: Allow for dsymutil. |
| * doc/install.texi: Document --with-dsymutil. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-09-28 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/rs6000/darwin.h (FIXED_R13): Add for PPC64. |
| (FIRST_SAVED_GP_REGNO): Save from R13 even when it is one |
| of the fixed regs. |
| |
| 2022-05-29 François-Xavier Coudert <fxcoudert@gcc.gnu.org> |
| |
| Backported from master: |
| 2021-12-18 François-Xavier Coudert <fxcoudert@gcc.gnu.org> |
| |
| * config/darwin-driver.c: Make version code more future-proof. |
| * config.gcc: Homogeneize darwin versions. |
| * configure.ac: Homogeneize darwin versions. |
| * configure: Regenerate. |
| |
| 2022-05-29 Saagar Jha <saagar@saagarjha.com> |
| |
| Backported from master: |
| 2021-10-27 Saagar Jha <saagar@saagarjha.com> |
| |
| * config.gcc: Adjust for Darwin21. |
| * config/darwin-c.c (macosx_version_as_macro): Likewise. |
| * config/darwin-driver.c (validate_macosx_version_min): |
| Likewise. |
| (darwin_find_version_from_kernel): Likewise. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-08-17 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR target/100340 |
| * config.in: Regenerate. |
| * config/i386/darwin.h (EXTRA_ASM_OPTS): New |
| (ASM_SPEC): Pass options to disable branch shortening where |
| needed. |
| * configure: Regenerate. |
| * configure.ac: Detect versions of 'as' that support the |
| optimisation which has the bug. |
| |
| 2022-05-29 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2022-03-04 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.c (darwin_fold_builtin): Make fcode an int to |
| avoid a mismatch with DECL_MD_FUNCTION_CODE(). |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-13 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105250 |
| * fold-const.c (fold_convertible_p): Revert |
| r12-7979-geaaf77dd85c333, instead check for size equality |
| of the vector types involved. |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-04 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/105140 |
| * fold-const.c (fold_convertible_p): Allow a TYPE_P arg. |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-06 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105163 |
| * tree-ssa-reassoc.c (repropagate_negates): Avoid propagating |
| negated abnormals. |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-06 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105173 |
| * tree-ssa-reassoc.c (find_insert_point): Get extra |
| insert_before output argument and compute it. |
| (insert_stmt_before_use): Adjust. |
| (rewrite_expr_tree): Likewise. |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-29 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105431 |
| * tree-ssa-math-opts.c (powi_as_mults_1): Make n unsigned. |
| (powi_as_mults): Use absu_hwi. |
| (gimple_expand_builtin_powi): Remove now pointless n != -n |
| check. |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-25 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105368 |
| * tree-ssa-math-opts.c (powi_cost): Use absu_hwi. |
| |
| 2022-05-27 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-05-11 Richard Biener <rguenther@suse.de> |
| |
| PR rtl-optimization/105559 |
| * cfgrtl.c (delete_insn_and_edges): Only perform search to BB_END |
| for non-debug insns. |
| |
| 2022-05-23 Paul A. Clarke <pc@us.ibm.com> |
| |
| PR target/104257 |
| * config/rs6000/bmi2intrin.h: Uglify local variables. |
| * config/rs6000/emmintrin.h: Likewise. |
| * config/rs6000/mm_malloc.h: Likewise. |
| * config/rs6000/mmintrin.h: Likewise. |
| * config/rs6000/pmmintrin.h: Likewise. |
| * config/rs6000/tmmintrin.h: Likewise. |
| * config/rs6000/xmmintrin.h: Likewise. |
| |
| 2022-05-16 Sebastian Pop <spop@amazon.com> |
| |
| PR target/105162 |
| * config/aarch64/aarch64-protos.h (atomic_ool_names): Increase dimension |
| of str array. |
| * config/aarch64/aarch64.c (aarch64_atomic_ool_func): Call |
| memmodel_from_int and handle MEMMODEL_SYNC_*. |
| (DEF0): Add __aarch64_*_sync functions. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/105396 |
| * asan.c (asan_redzone_buffer::emit_redzone_byte): Handle the case |
| where offset is bigger than off but smaller than m_prev_offset + 32 |
| bits by pushing one or more 0 bytes. Sink the |
| m_shadow_bytes.safe_push (value); flush_if_full (); statements from |
| all cases to the end of the function. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-22 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/105333 |
| * rtlanal.c (replace_rtx): Use simplify_subreg or |
| simplify_unary_operation if CONST_SCALAR_INT_P rather than just |
| CONST_INT_P. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/105257 |
| * config/sparc/sparc.c (epilogue_renumber): If ORIGINAL_REGNO, |
| use gen_raw_REG instead of gen_rtx_REG and copy over also |
| ORIGINAL_REGNO. Use return 0; instead of /* fallthrough */. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/105214 |
| * config/i386/i386-expand.c (ix86_emit_i387_log1p): Call |
| do_pending_stack_adjust. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/105211 |
| * builtins.c (expand_builtin_int_roundingfn_2): If mathfn_built_in_1 |
| fails for TREE_TYPE (arg), retry it with |
| TREE_VALUE (TYPE_ARG_TYPES (TREE_TYPE (fndecl))) and if even that |
| fails, emit call normally. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/105189 |
| * fold-const.c (make_range_step): Fix up handling of |
| (unsigned) x +[low, -] ranges for signed x if low fits into |
| typeof (x). |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/104985 |
| * combine.c (struct undo): Add where.regno member. |
| (do_SUBST_MODE): Rename to ... |
| (subst_mode): ... this. Change first argument from rtx * into int, |
| operate on regno_reg_rtx[regno] and save regno into where.regno. |
| (SUBST_MODE): Remove. |
| (try_combine): Use subst_mode instead of SUBST_MODE, change first |
| argument from regno_reg_rtx[whatever] to whatever. For UNDO_MODE, use |
| regno_reg_rtx[undo->where.regno] instead of *undo->where.r. |
| (undo_to_marker): For UNDO_MODE, use regno_reg_rtx[undo->where.regno] |
| instead of *undo->where.r. |
| (simplify_set): Use subst_mode instead of SUBST_MODE, change first |
| argument from regno_reg_rtx[whatever] to whatever. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-04-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/105123 |
| * config/i386/i386-expand.c (ix86_expand_vector_init_general): Avoid |
| using word as target for expand_simple_binop when doing ASHIFT and |
| IOR. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/105093 |
| * ubsan.c (instrument_object_size): If t is equal to inner and |
| is a decl other than global var, punt. When emitting call to |
| UBSAN_OBJECT_SIZE ifn, make sure base is addressable. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/105094 |
| * gimple-ssa-store-merging.c (mem_valid_for_store_merging): Punt if |
| bitsize <= 0 rather than just == 0. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/104971 |
| * config/i386/i386-expand.c |
| (ix86_expand_builtin) <case IX86_BUILTIN_READ_FLAGS>: If ignore, |
| don't push/pop anything and just return const0_rtx. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/104910 |
| * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Copy |
| imm rtx. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/104814 |
| * ifcvt.c (find_if_case_1, find_if_case_2): Punt if test_bb doesn't |
| end with onlyjump_p. Assume BB_END (test_bb) is always non-NULL. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-09 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c/104711 |
| * doc/invoke.texi (-Wextra): Document that -Wshift-negative-value |
| is enabled by it only for C++11 to C++17 rather than for C++03 or |
| later. |
| (-Wshift-negative-value): Similarly (except here we stated |
| that it is enabled for C++11 or later). |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-03-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/104775 |
| * config/s390/s390.md (*cmp_and_trap_unsigned_int<mode>): Use |
| S constraint instead of T in the last alternative. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-25 Jakub Jelinek <jakub@redhat.com> |
| Marc Glisse <marc.glisse@inria.fr> |
| |
| PR tree-optimization/104675 |
| * match.pd (t * 2U / 2 -> t & (~0 / 2), t / 2U * 2 -> t & ~1): |
| Restrict simplifications to INTEGRAL_TYPE_P. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/104681 |
| * config/rs6000/vector.md (movmisalign<mode>): Use rs6000_emit_move. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/104675 |
| * match.pd (-A - 1 -> ~A, -1 - A -> ~A): Don't simplify for |
| COMPLEX_TYPE. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/102656 |
| * asan.c (instrument_derefs): If inner is a RESULT_DECL and access is |
| known to be within bounds, treat it like automatic variables. |
| If instrumenting access and inner is {VAR,PARM,RESULT}_DECL from |
| current function and !TREE_STATIC which is not TREE_ADDRESSABLE, mark |
| it addressable. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/104557 |
| * valtrack.c (debug_lowpart_subreg): Don't call gen_rtx_raw_SUBREG |
| if expr has VOIDmode. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/104544 |
| * combine.c (try_combine): When looking for insn whose links |
| should be updated from i3 to i2, don't stop on debug insns, instead |
| skip over them. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/104517 |
| * omp-low.c (task_cpyfns): New variable. |
| (delete_omp_context): Don't call finalize_task_copyfn from here. |
| (create_task_copyfn): Push task_stmt into task_cpyfns. |
| (execute_lower_omp): Call finalize_task_copyfn here on entries from |
| task_cpyfns vector and release the vector. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR sanitizer/104449 |
| * asan.c: Include tree-eh.h. |
| (handle_builtin_alloca): Handle the case when __builtin_alloca or |
| __builtin_alloca_with_align can throw. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/104502 |
| * config/i386/i386.md (cvtsd2ss splitter): If operands[1] is xmm16+ |
| and AVX512VL isn't available, move operands[1] to operands[0] first. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/104446 |
| * combine.c (subst): Don't substitute CONST_INTs into RTX_AUTOINC |
| operands. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-02-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/102140 |
| * config/rs6000/rs6000.c (vspltis_shifted): Return false also if |
| split1 pass has finished already. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-01-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/104263 |
| * gimple-ssa-store-merging.c (get_status_for_store_merging): For |
| cfun->can_throw_non_call_exceptions && cfun->eh test whether |
| last non-debug stmt in the bb is store_valid_for_store_merging_p |
| rather than last stmt. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-01-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/102478 |
| * optabs.c (prepare_cmp_insn): If !can_create_pseudo_p (), don't |
| force_reg constants and for -fnon-call-exceptions fail if copy_to_reg |
| would be needed. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-01-19 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/102860 |
| * match.pd (x %[fl] y -> x % y): New simplification for |
| unsigned integral types. |
| * optabs-tree.c (optab_for_tree_code): Return unknown_optab |
| for {CEIL,FLOOR,ROUND}_{DIV,MOD}_EXPR with VECTOR_TYPE. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2022-01-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/103908 |
| * ifcvt.c (bb_valid_for_noce_process_p): Punt on bbs ending with |
| asm goto. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-12-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/103860 |
| * shrink-wrap.c (try_shrink_wrapping): Make sure can_get_prologue is |
| called on pro even if nothing further is pushed into vec. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-12-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/103837 |
| * loop-invariant.c (can_move_invariant_reg): Ignore DEBUG_INSNs in |
| the decisions whether to return false or continue and right before |
| returning true reset those debug insns that previously caused |
| returning false. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-11-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/103435 |
| * gimple-ssa-store-merging.c (find_bswap_or_nop_finalize): Avoid UB if |
| n->range - rsize == 8, just clear both *cmpnop and *cmpxchg in that |
| case. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-11-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/103384 |
| * omp-general.c (omp_context_selector_matches): For ACCEL_COMPILER, |
| return 0 for kind(host) and continue for kind(nohost). |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-11-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/102431 |
| * gimplify.c (replace_reduction_placeholders): Remove. |
| (note_no_context_vars): New function. |
| (gimplify_omp_loop): For OMP_PARALLEL's BIND_EXPR create a new |
| BLOCK. Use copy_tree_body_r with walk_tree instead of unshare_expr |
| and replace_reduction_placeholders for duplication of |
| OMP_CLAUSE_REDUCTION_{INIT,MERGE} expressions. Ensure all mentioned |
| automatic vars have DECL_CONTEXT set to non-NULL before doing so |
| and reset it afterwards for those vars and their corresponding |
| vars. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-11-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/103192 |
| * tree-ssa-loop-im.c (move_computations_worker): Use |
| reset_flow_sensitive_info instead of manually clearing |
| SSA_NAME_RANGE_INFO and do it for all SSA_NAMEs, not just ones |
| with integral types. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-11-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/103205 |
| * config/i386/sync.md (atomic_bit_test_and_set<mode>, |
| atomic_bit_test_and_complement<mode>, |
| atomic_bit_test_and_reset<mode>): Use OPTAB_WIDEN instead of |
| OPTAB_DIRECT. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-11-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/101378 |
| * dwarf2out.c (field_byte_offset): Do the PCC_BITFIELD_TYPE_MATTERS |
| handling only for DECL_BIT_FIELD_TYPE decls. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-10-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/102441 |
| * var-tracking.c (add_stores): For cselib_sp_derived_value_p values |
| use MO_VAL_SET if loc is not sp. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-09-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/102498 |
| * config/i386/i386.c (standard_80387_constant_p): Don't recognize |
| special 80387 instruction XFmode constants if flag_rounding_math. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-09-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/88578 |
| PR c++/102295 |
| * varasm.c (output_constructor_regular_field): Instead of assertion |
| that array_size_for_constructor result is equal to size of |
| TREE_TYPE (local->val) in bytes, assert that the type size is greater |
| or equal to array_size_for_constructor result and use type size as |
| fieldsize. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-09-08 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/102224 |
| * config/i386/i386.md (xorsign<mode>3): If operands[1] is equal to |
| operands[2], emit abs<mode>2 instead. |
| (@xorsign<mode>3_1): Add early-clobber for output operand. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-08-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/101905 |
| * dwarf2out.c (gen_variable_die): Add DW_AT_location for global |
| register variables already during early_dwarf if possible. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-28 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/101624 |
| * ubsan.c (maybe_instrument_pointer_overflow, |
| instrument_object_size): Only test DECL_REGISTER on VAR_DECLs, |
| PARM_DECLs or RESULT_DECLs. |
| * sanopt.c (maybe_optimize_ubsan_ptr_ifn): Likewise. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/101562 |
| * expmed.c (store_integral_bit_field): Only use movstrict_optab |
| if the operand isn't paradoxical. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/101535 |
| * gimplify.c (omp_check_private): Properly skip ORT_TARGET_DATA |
| contexts in which decl isn't privatized and for ORT_TARGET return |
| false if decl is mapped. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-20 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/101384 |
| * config/rs6000/rs6000.c (vspltis_constant): Accept EASY_VECTOR_MSB |
| only if step and copies are equal to 1. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/94366 |
| * omp-low.c (lower_rec_input_clauses): Rename is_fp_and_or to |
| is_truth_op, set it for TRUTH_*IF_EXPR regardless of new_var's type, |
| use boolean_type_node instead of integer_type_node as NE_EXPR type. |
| (lower_reduction_clauses): Likewise. |
| |
| 2022-05-10 Tobias Burnus <tobias@codesourcery.com> |
| |
| Backported from master: |
| 2021-05-04 Tobias Burnus <tobias@codesourcery.com> |
| |
| * omp-low.c (lower_rec_input_clauses, lower_reduction_clauses): Handle |
| && and || with floating-point and complex arguments. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-14 Jakub Jelinek <jakub@redhat.com> |
| |
| PR go/101407 |
| * godump.c (godump_str_hash): New type. |
| (godump_container::pot_dummy_types): Use string_hash instead of |
| ptr_hash in the hash_set. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-07-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/101266 |
| * dwarf2out.c (loc_list_from_tree_1): Handle COMPOUND_LITERAL_EXPR. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/101210 |
| * match.pd ((intptr_t)x eq/ne CST to x eq/ne (typeof x) CST): Don't |
| perform the optimization in GENERIC when sanitizing and x has a |
| reference type. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-23 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/101167 |
| * omp-low.c (lower_omp_regimplify_p): Regimplify also PARM_DECLs |
| and RESULT_DECLs that have DECL_HAS_VALUE_EXPR_P set. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR inline-asm/100785 |
| * cfgexpand.c (expand_asm_stmt): If errors are emitted, |
| remove all inputs, outputs and clobbers from the asm and |
| set template to "". |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/101062 |
| * stor-layout.c (finish_bitfield_layout): Don't add bitfield |
| representatives in QUAL_UNION_TYPE. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/101062 |
| * stor-layout.c (finish_bitfield_representative): For fields in unions |
| assume nextf is always NULL. |
| (finish_bitfield_layout): Compute bit field representatives also in |
| unions, but handle it as if each bitfield was the only field in the |
| aggregate. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/101046 |
| * expr.c (expand_expr_real_2) <case VEC_PACK_FIX_TRUNC_EXPR, |
| case VEC_PACK_TRUNC_EXPR>: Clear subtarget when changing mode. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/101008 |
| * simplify-rtx.c (relational_result): New function. |
| (simplify_logical_relational_operation, |
| simplify_relational_operation): Use it. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/100887 |
| * fold-const.c (fold_read_from_vector): Return NULL if trying to |
| read from a CONSTRUCTOR with vector type elements. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-07 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/100898 |
| * tree-inline.c (copy_bb): Only use gimple_call_arg_ptr if memcpy |
| should copy any arguments. Don't call gimple_call_num_args |
| on id->call_stmt or call_stmt more than once. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-06-04 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/100887 |
| * config/i386/i386-expand.c (ix86_expand_vector_init): Handle |
| concatenation from half-sized modes with TImode elements. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-05-18 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/100580 |
| * function.c (push_dummy_function): Set DECL_ARTIFICIAL and |
| DECL_ASSEMBLER_NAME on the fn_decl. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-05-15 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/100342 |
| * regcprop.c (copy_value): When copying a source reg in a wider |
| mode than it has recorded for the value, adjust recorded destination |
| mode too or punt if !REG_CAN_CHANGE_MODE_P. |
| |
| 2022-05-10 liuhongt <hongtao.liu@intel.com> |
| |
| Backported from master: |
| 2021-01-21 liuhongt <hongtao.liu@intel.com> |
| |
| PR rtl-optimization/98694 |
| * regcprop.c (copy_value): If SRC had been assigned a mode |
| narrower than the copy, we can't link DEST into the chain even |
| they have same hard_regno_nregs(i.e. HImode/SImode in i386 |
| backend). |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-05-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/100508 |
| * cfgexpand.c (expand_debug_expr): For DEBUG_EXPR_DECL with vector |
| type, don't reuse DECL_RTL if it has different mode, instead force |
| creation of a new DEBUG_EXPR. |
| |
| 2022-05-10 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-05-11 Jakub Jelinek <jakub@redhat.com> |
| |
| PR middle-end/100471 |
| * omp-low.c (lower_omp_task_reductions): For OMP_TASKLOOP, if data |
| is 0, bypass the reduction loop including |
| GOMP_taskgroup_reduction_unregister call. |
| |
| 2022-05-10 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/105292 |
| * config/sparc/sparc.c (sparc_vectorize_vec_perm_const): Return |
| true only for 8-byte vector modes. |
| |
| 2022-05-06 Michael Meissner <meissner@linux.ibm.com> |
| |
| Backported from master: |
| 2022-05-06 Michael Meissner <meissner@linux.ibm.com> |
| |
| PR target/102059 |
| * config/rs6000/rs6000.c (rs6000_can_inline_p): Ignore -mpower8-fusion |
| option for inlining purposes. |
| |
| 2022-05-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-08 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105198 |
| * tree-predcom.c (find_looparound_phi): Check whether |
| the found memory location of the entry value is clobbered |
| inbetween the value we want to use and loop entry. |
| |
| 2022-05-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-02-07 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/104402 |
| * gimple-expr.c (is_gimple_condexpr): _Complex typed |
| compares are not valid. |
| * tree-cfg.c (verify_gimple_assign_ternary): For COND_EXPR |
| check is_gimple_condexpr. |
| |
| 2022-04-27 Hongyu Wang <hongyu.wang@intel.com> |
| |
| Backported from master: |
| 2022-04-25 Hongyu Wang <hongyu.wang@intel.com> |
| |
| PR target/105339 |
| * config/i386/avx512fintrin.h (_mm512_scalef_round_pd): |
| Add parentheses for parameters and djust format. |
| (_mm512_mask_scalef_round_pd): Ditto. |
| (_mm512_maskz_scalef_round_pd): Ditto. |
| (_mm512_scalef_round_ps): Ditto. |
| (_mm512_mask_scalef_round_ps): Ditto. |
| (_mm512_maskz_scalef_round_ps): Ditto. |
| (_mm_scalef_round_sd): Use _mm_undefined_pd. |
| (_mm_scalef_round_ss): Use _mm_undefined_ps. |
| (_mm_mask_scalef_round_sd): New macro. |
| (_mm_mask_scalef_round_ss): Ditto. |
| (_mm_maskz_scalef_round_sd): Ditto. |
| (_mm_maskz_scalef_round_ss): Ditto. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-01-20 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/100786 |
| * gimple-fold.c (get_symbol_constant_value): Only return |
| values of compatible type to the symbol. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-11-23 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/103361 |
| * gimple-loop-jam.c (adjust_unroll_factor): Use lambda_int |
| for the dependence distance. |
| * tree-data-ref.c (print_lambda_vector): Properly print a lambda_int. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-12-07 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/103596 |
| * tree-ssa-sccvn.c (eliminate_dom_walker::eliminate_stmt): |
| Note we are not propagating into a PHI argument to may_propagate_copy. |
| * tree-ssa-propagate.h (may_propagate_copy): Add |
| argument specifying whether we propagate into a PHI arg. |
| * tree-ssa-propagate.c (may_propagate_copy): Likewise. |
| When not doing so we can replace an abnormal with |
| something else. |
| (may_propagate_into_stmt): Update may_propagate_copy calls. |
| (replace_exp_1): Move propagation checking code to |
| propagate_value and rename to ... |
| (replace_exp): ... this and elide previous wrapper. |
| (propagate_value): Perform checking with adjusted |
| may_propagate_copy call and dispatch to replace_exp. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-02-03 Richard Biener <rguenther@suse.de> |
| |
| PR debug/104337 |
| * tree-nrv.c (pass_nrv::execute): Remove tieing result and found |
| together via DECL_ABSTRACT_ORIGIN. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-03-09 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/104786 |
| * cfgexpand.c (expand_asm_stmt): Do not generate a copy |
| for VLAs without an upper size bound. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-04-12 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105226 |
| * tree-vect-loop-manip.c (vect_loop_versioning): Verify |
| we can split the exit of an outer loop we choose to version. |
| |
| 2022-04-21 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-03-28 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/105070 |
| * tree-switch-conversion.h |
| (bit_test_cluster::hoist_edge_and_branch_if_true): Add location |
| argument. |
| * tree-switch-conversion.c |
| (bit_test_cluster::hoist_edge_and_branch_if_true): Annotate |
| cond with location. |
| (bit_test_cluster::emit): Annotate all generated expressions |
| with location. |
| |
| 2022-04-05 Martin Jambor <mjambor@suse.cz> |
| |
| Backported from master: |
| 2022-03-31 Martin Jambor <mjambor@suse.cz> |
| |
| PR ipa/103083 |
| * ipa-prop.h (ipa_ancestor_jf_data): New flag keep_null; |
| (ipa_get_jf_ancestor_keep_null): New function. |
| * ipa-prop.c (ipa_set_ancestor_jf): Initialize keep_null field of the |
| ancestor function. |
| (compute_complex_assign_jump_func): Pass false to keep_null |
| parameter of ipa_set_ancestor_jf. |
| (compute_complex_ancestor_jump_func): Pass true to keep_null |
| parameter of ipa_set_ancestor_jf. |
| (update_jump_functions_after_inlining): Carry over keep_null from the |
| original ancestor jump-function or merge them. |
| (ipa_write_jump_function): Stream keep_null flag. |
| (ipa_read_jump_function): Likewise. |
| (ipa_print_node_jump_functions_for_edge): Print the new flag. |
| * ipa-cp.c (class ipcp_bits_lattice): Make various getters const. New |
| member function known_nonzero_p. |
| (ipcp_bits_lattice::known_nonzero_p): New. |
| (ipcp_bits_lattice::meet_with_1): New parameter drop_all_ones, |
| observe it. |
| (ipcp_bits_lattice::meet_with): Likewise. |
| (propagate_bits_across_jump_function): Simplify. Pass true in |
| drop_all_ones when it is necessary. |
| (propagate_aggs_across_jump_function): Take care of keep_null |
| flag. |
| (ipa_get_jf_ancestor_result): Propagate NULL accross keep_null |
| jump functions. |
| |
| 2022-03-26 H.J. Lu <hjl.tools@gmail.com> |
| |
| Backported from master: |
| 2022-03-26 H.J. Lu <hjl.tools@gmail.com> |
| |
| PR target/105052 |
| * config/i386/sse.md (ssse3_ph<plusminus_mnemonic>wv4hi3): |
| Replace "Yv" with "x". |
| (ssse3_ph<plusminus_mnemonic>dv2si3): Likewise. |
| (ssse3_psign<mode>3): Likewise. |
| |
| 2022-03-18 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2022-03-04 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/87496 |
| PR target/104208 |
| * config/rs6000/rs6000.c (rs6000_option_override_internal): Make the |
| ISA 2.06 requirement for -mabi=ieeelongdouble conditional on |
| -mlong-double-128. |
| Move the -mabi=ieeelongdouble and -mabi=ibmlongdouble error checking |
| from here... |
| * common/config/rs6000/rs6000-common.c (rs6000_handle_option): |
| ... to here. |
| |
| 2022-03-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-02-09 Richard Biener <rguenther@suse.de> |
| |
| PR target/104453 |
| * config/i386/i386.c (ix86_gimple_fold_builtin): Guard shift |
| folding for NULL LHS. |
| |
| 2022-03-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-02-14 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/104511 |
| * tree-ssa-forwprop.c (simplify_vector_constructor): Avoid |
| touching DFP <-> FP conversions. |
| |
| 2022-03-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2022-01-20 Richard Biener <rguenther@suse.de> |
| |
| PR target/100784 |
| * config/i386/i386.c (ix86_gimple_fold_builtin): Check for |
| LHS before folding __builtin_ia32_shufpd and friends. |
| |
| 2022-03-12 Michael Meissner <meissner@the-meissners.org> |
| |
| PR target/99708 |
| * config/rs6000/rs6000-c.c: Revert 2022-03-05 patch. |
| |
| 2022-03-06 Michael Meissner <meissner@the-meissners.org> |
| |
| PR target/104253 |
| * config/rs6000/rs6000.c (init_float128_ibm): Update the |
| conversion functions used to convert IFmode types. Backport |
| change made to the master branch on 2022-02-14. |
| |
| 2022-03-06 Michael Meissner <meissner@the-meissners.org> |
| |
| PR target/99708 |
| * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define |
| __SIZEOF_IBM128__ if the IBM 128-bit long double type is created. |
| Define __SIZEOF_FLOAT128__ if the IEEE 128-bit floating point type |
| is created. Backport change to master branch on 2022-02-17. |
| |
| 2022-02-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-11-15 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/103237 |
| * tree-vect-loop.c (vect_is_simple_reduction): Fail for |
| double reductions with multiple inner loop LC PHI nodes. |
| |
| 2022-02-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-11-22 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/103181 |
| PR middle-end/103248 |
| * tree-eh.c (operation_could_trap_helper_p): Properly |
| check vector constants for a zero element for integer |
| division. Separate floating point and integer division code. |
| Properly handle fixed-point RDIV_EXPR. |
| |
| 2022-02-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-11-08 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/102798 |
| * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): |
| Only copy points-to info to newly generated SSA names. |
| |
| 2022-02-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-10-15 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/102762 |
| * tree-inline.c (copy_bb): Avoid underflowing nargs. |
| |
| 2022-02-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-06-08 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100923 |
| * tree-ssa-sccvn.c (valueize_refs_1): Take a pointer to |
| the operand vector to be valueized. |
| (valueize_refs): Likewise. |
| (valueize_shared_reference_ops_from_ref): Adjust. |
| (valueize_shared_reference_ops_from_call): Likewise. |
| (vn_reference_lookup_3): Likewise. |
| (vn_reference_lookup_pieces): Likewise. Re-valueize |
| with honoring availability when we are about to create |
| the ao_ref and valueized before. |
| (vn_reference_lookup): Likewise. |
| (vn_reference_insert_pieces): Adjust. |
| |
| 2022-02-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-06-22 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/101158 |
| * tree-vect-slp.c (vect_build_slp_tree_1): Move same operand |
| checking after checking for matching operation. |
| |
| 2022-02-15 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2022-02-07 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/103627 |
| * config/rs6000/rs6000.c (rs6000_option_override_internal): Move the |
| hunk affecting VSX and ALTIVEC to appropriate place. |
| |
| 2022-02-15 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2022-02-07 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/103627 |
| * config/rs6000/rs6000.c (rs6000_option_override_internal): Disable |
| MMA if !TARGET_VSX. |
| |
| 2022-02-14 Maciej W. Rozycki <macro@embecosm.com> |
| |
| Backported from master: |
| 2022-02-08 Maciej W. Rozycki <macro@embecosm.com> |
| |
| * config/riscv/t-riscv (riscv-sr.o): Add $(TM_H) dependency. |
| |
| 2022-02-13 Alan Modra <amodra@gmail.com> |
| |
| Backported from master: |
| 2020-10-01 Alan Modra <amodra@gmail.com> |
| |
| * config/rs6000/ppc-asm.h: Support __PCREL__ code. |
| |
| 2022-02-10 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backported from master: |
| 2022-02-10 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/104469 |
| * config/i386/sse.md (vec_unpacks_float_lo_v4si): |
| Change operand 1 constraint to register_operand. |
| |
| 2022-02-09 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/104458 |
| * config/i386/i386-expand.c (ix86_split_idivmod): |
| Force operands[2] and operands[3] into a register.. |
| |
| 2022-02-09 liuhongt <hongtao.liu@intel.com> |
| |
| PR target/104451 |
| * config/i386/sse.md (<insn><mode>3): lowpart_subreg |
| operands[2] from SImode to QImode. |
| |
| 2022-02-03 Sebastian Huber <sebastian.huber@embedded-brains.de> |
| |
| PR target/104090 |
| * config/rs6000/rs6000.c (rs6000_machine_from_flags): Use also |
| rs6000_cpu. |
| |
| 2022-02-02 Xi Ruoyao <xry111@mengyan1223.wang> |
| |
| Backported from master: |
| 2022-02-01 Xi Ruoyao <xry111@mengyan1223.wang> |
| |
| PR middle-end/95115 |
| * fold-const.c (const_binop): Do not fold NaN result from |
| non-NaN operands. |
| |
| 2022-01-15 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-11-16 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/102976 |
| * config/rs6000/mma.md (*vsx_assemble_pair): Add early-clobber for |
| output operand. |
| (*mma_assemble_acc): Likewise. |
| |
| 2022-01-15 Peter Bergner <bergner@linux.ibm.com> |
| |
| * config/rs6000/mma.md (UNSPEC_VSX_ASSEMBLE): New unspec. |
| (vsx_assemble_pair): Use mma_assemble_input_operand. |
| Expand into UNSPEC_VSX_ASSEMBLE wrapper. |
| (*vsx_assemble_pair): New define_insn_and_split. |
| * config/rs6000/rs6000.c (rs6000_split_multireg_move): Handle |
| UNSPEC_VSX_ASSEMBLE. |
| |
| 2022-01-15 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-09-14 Peter Bergner <bergner@linux.ibm.com> |
| |
| * config/rs6000/mma.md (unspecv): Add UNSPECV_MMA_XXSETACCZ. |
| (*movpxi): Remove 'O' alternative. |
| (mma_xxsetaccz): Change to define_insn. Use UNSPECV_MMA_XXSETACCZ. |
| Add comment. |
| * config/rs6000/rs6000.c (rs6000_rtx_costs): Handle UNSPEC_VOLATILE. |
| |
| 2022-01-14 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump |
| reverse flag as "reverse" for the sake of consistency. |
| * ipa-sra.c: Fix copyright year. |
| (ipa_sra_function_summaries::duplicate): Copy the reverse flag. |
| (dump_isra_access): Tweak dump line. |
| (isra_write_node_summary): Write the reverse flag. |
| (isra_read_node_info): Read it. |
| (pull_accesses_from_callee): Test its consistency and copy it. |
| |
| 2022-01-12 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2020-11-26 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/97953 |
| * gimple-ssa-evrp-analyze.c |
| (evrp_range_analyzer::record_ranges_from_incoming_edge): Make |
| sure the condition post-dominates the SSA definition before |
| recording into SSA_NAME_RANGE_INFO. |
| |
| 2022-01-10 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/103465 |
| * coretypes.h (unwind_info_type): Swap UI_SEH and UI_TARGET. |
| |
| 2021-12-16 Martin Liska <mliska@suse.cz> |
| |
| Backported from master: |
| 2021-12-15 Martin Liska <mliska@suse.cz> |
| |
| PR target/103661 |
| * config/i386/i386-builtins.c (fold_builtin_cpu): Compare to 0 |
| as API expects that non-zero values are returned (do that |
| it mask == 31). |
| For "avx512vbmi2" argument, we return now 1 << 31, which is a |
| negative integer value. |
| |
| 2021-12-15 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2021-11-30 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR target/102347 |
| * config/rs6000/rs6000-call.c (rs6000_builtin_decl): Remove builtin mask |
| check. |
| |
| 2021-12-01 Martin Jambor <mjambor@suse.cz> |
| |
| Backported from master: |
| 2021-11-30 Martin Jambor <mjambor@suse.cz> |
| |
| PR ipa/103267 |
| * ipa-sra.c (scan_function): Also check ECF_LOOPING_CONST_OR_PURE flag. |
| |
| 2021-11-30 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/103274 |
| * config/i386/i386.c (ix86_output_call_insn): Beef up comment about |
| nops emitted with SEH. |
| * config/i386/winnt.c (i386_pe_seh_unwind_emit): When switching to |
| the cold section, emit a nop before the directive if the previous |
| active instruction is a call. |
| |
| 2021-11-25 Jan Hubicka <jh@suse.cz> |
| |
| Backported from master: |
| 2021-11-20 Jan Hubicka <hubicka@ucw.cz> |
| |
| PR ipa/103052 |
| * ipa-pure-const.c (propagate_pure_const): Fix merging of loping flag. |
| |
| 2021-11-23 Bill Schmidt <wschmidt@linux.ibm.com> |
| |
| PR target/101985 |
| * config/rs6000/altivec.h (vec_cpsgn): Swap operand order. |
| |
| 2021-11-22 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| |
| Backported from master: |
| 2021-11-19 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| |
| * config/s390/s390.md (define_peephole2): Variable insn points |
| to the first matched insn. Use peep2_next_insn(1) to refer to |
| the second matched insn. |
| |
| 2021-11-15 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2021-11-11 Kewen Lin <linkw@linux.ibm.com> |
| |
| * doc/invoke.texi: Change references to "future cpu" to "power10", |
| "-mcpu=future" to "-mcpu=power10". Adjust words for float128. |
| |
| 2021-11-09 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-10-13 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/102714 |
| * ipa-sra.c (ptr_parm_has_nonarg_uses): Fix volatileness |
| check. |
| |
| 2021-11-09 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-05-19 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/100672 |
| * fold-const.c (fold_negate_expr_1): Use element_precision. |
| (negate_expr_p): Likewise. |
| |
| 2021-11-09 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100253 |
| * tree-vect-stmts.c (vectorizable_load): Do not assume |
| element alignment when DR_MISALIGNMENT is -1. |
| (vectorizable_store): Likewise. |
| |
| 2021-11-08 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2021-10-26 Kewen Lin <linkw@linux.ibm.com> |
| |
| PR tree-optimization/102789 |
| * tree-vect-loop-manip.c (vect_update_inits_of_drs): Do not |
| update inits of simd_lane_access. |
| |
| 2021-11-03 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/102842 |
| * lra-constraints.c (match_reload): Ignore out in checking values |
| of outs. |
| (curr_insn_transform): Collect outputs before doing reloads of operands. |
| |
| 2021-11-02 Martin Jambor <mjambor@suse.cz> |
| |
| Backported from master: |
| 2021-10-21 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/102505 |
| * tree-sra.c (totally_scalarize_subtree): Check that the |
| encountered field fits within the acces we would like to put it |
| in. |
| |
| 2021-10-28 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * doc/invoke.texi (%X): Remove obsolete reference to -Wl. |
| |
| 2021-10-27 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/102761 |
| * config/i386/i386.c (ix86_print_operand_address): |
| Error out for non-address_operand asm operands. |
| |
| 2021-10-26 Piotr Kubaj <pkubaj@FreeBSD.org> |
| |
| Backported from master: |
| 2021-10-16 Piotr Kubaj <pkubaj@FreeBSD.org> |
| |
| * configure.ac: Treat powerpc64*-*-freebsd* the same as |
| powerpc64-*-freebsd*. |
| * configure: Regenerate. |
| |
| 2021-10-24 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md: Don't use 'G' constraint in integer move patterns. |
| |
| 2021-10-21 H.J. Lu <hjl.tools@gmail.com> |
| |
| Backported from master: |
| 2021-10-21 H.J. Lu <hjl.tools@gmail.com> |
| |
| PR target/98667 |
| * doc/invoke.texi: Document -fcf-protection requires i686 or |
| new. |
| |
| 2021-10-15 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md: Consistently use "rG" constraint for copy |
| instruction in move patterns. |
| |
| 2021-10-14 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md (cbranchsf4): Disable if TARGET_SOFT_FLOAT. |
| (cbranchdf4): Likewise. |
| Add missing move patterns for TARGET_SOFT_FLOAT. |
| |
| 2021-10-13 John David Anglin <danglin@gcc.gnu.org> |
| |
| * config/pa/pa.md (muldi3): Add support for inlining 64-bit |
| multiplication on 32-bit PA 1.1 and 2.0 targets. |
| |
| 2021-10-13 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-08-25 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/102046 |
| * tree-vect-slp.c (vect_build_slp_tree_2): Conservatively |
| update ->any_pattern when swapping operands. |
| |
| 2021-10-13 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-08-17 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/101925 |
| * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Set |
| reverse on COMPONENT_REF and ARRAY_REF according to |
| what reverse_storage_order_for_component_p does. |
| (vn_reference_eq): Compare reversed on reference ops. |
| (reverse_storage_order_for_component_p): New overload. |
| (vn_reference_lookup_3): Check reverse_storage_order_for_component_p |
| on the reference looked up. |
| |
| 2021-10-13 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-08-17 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/101373 |
| PR tree-optimization/101868 |
| * tree-ssa-pre.c (prune_clobbered_mems): Also prune trapping |
| references when the BB may not return. |
| |
| 2021-10-13 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-08-10 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/101824 |
| * tree-nested.c (get_frame_field): Mark the COMPONENT_REF as |
| volatile in case the variable was. |
| |
| 2021-10-12 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/102588 |
| * config/sparc/sparc-modes.def (OI): New integer mode. |
| |
| 2021-10-11 Diane Meirowitz <diane.meirowitz@oracle.com> |
| |
| Backported from master: |
| 2021-10-11 Diane Meirowitz <diane.meirowitz@oracle.com> |
| |
| * doc/invoke.texi: Add link to UndefinedBehaviorSanitizer |
| documentation, mention UBSAN_OPTIONS, similar to what is done |
| for AddressSanitizer. |
| |
| 2021-10-11 Andrew Pinski <apinski@marvell.com> |
| |
| PR tree-optimization/102622 |
| * tree-ssa-phiopt.c (conditional_replacement): Set neg |
| to false for one bit signed types. |
| |
| 2021-10-01 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * explow.c: Include langhooks.h. |
| (set_stack_check_libfunc): Build a proper function type. |
| |
| 2021-10-01 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR c++/64697 |
| * config/i386/i386.c (legitimate_pic_address_disp_p): For PE-COFF do |
| not return true for external weak function symbols in medium model. |
| |
| 2021-09-22 Kewen Lin <linkw@linux.ibm.com> |
| |
| Backported from master: |
| 2021-09-22 Kewen Lin <linkw@linux.ibm.com> |
| |
| * ipa-fnsummary.c (inline_read_section): Unpack a dummy bit |
| to keep consistent with the side of streaming out. |
| |
| 2021-09-21 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| Backported from master: |
| 2021-09-08 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR target/102107 |
| * config/rs6000/rs6000-logue.c (rs6000_emit_epilogue): For ELFv2 use |
| r11 instead of r12 for restoring CR. |
| |
| 2021-09-21 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| Backported from master: |
| 2021-09-03 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR target/102107 |
| * config/rs6000/rs6000-logue.c (rs6000_emit_prologue): On ELFv2 use r11 |
| instead of r12 for CR save, in all cases. |
| |
| 2021-09-17 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR rtl-optimization/102306 |
| * combine.c (try_combine): Abort the combination if we are about to |
| duplicate volatile references. |
| |
| 2021-09-16 Daniel Cederman <cederman@gaisler.com> |
| |
| * config/sparc/sparc-opts.h (enum sparc_processor_type): Add LEON5 |
| * config/sparc/sparc.c (struct processor_costs): Add LEON5 costs |
| (leon5_adjust_cost): Increase cost of store with data dependency |
| on ALU instruction and FPU anti-dependencies. |
| (sparc_option_override): Add LEON5 costs |
| (sparc_adjust_cost): Add LEON5 cost adjustments |
| * config/sparc/sparc.h: Add LEON5 |
| * config/sparc/sparc.md: Include LEON5 scheduling information |
| * config/sparc/sparc.opt: Add LEON5 |
| * doc/invoke.texi: Add LEON5 |
| * config/sparc/leon5.md: New file. |
| |
| 2021-09-16 Daniel Cederman <cederman@gaisler.com> |
| |
| * config/sparc/sparc.md (stack_protect_setsi): Add NOP to prevent |
| sensitive sequence for B2BST errata workaround. |
| |
| 2021-09-16 Daniel Cederman <cederman@gaisler.com> |
| |
| * config/sparc/sparc.c (sparc_do_work_around_errata): Do not begin |
| functions with atomic instruction in the UT700 errata workaround. |
| |
| 2021-09-16 Daniel Cederman <cederman@gaisler.com> |
| |
| * config/sparc/sparc.c (next_active_non_empty_insn): New function |
| that returns next active non empty assembly instruction. |
| (sparc_do_work_around_errata): Use new function. |
| |
| 2021-09-16 Daniel Cederman <cederman@gaisler.com> |
| |
| * config/sparc/sparc.c (store_insn_p): Add predicate for store |
| attributes. |
| (load_insn_p): Add predicate for load attributes. |
| (sparc_do_work_around_errata): Use new predicates. |
| |
| 2021-09-16 Andreas Larsson <andreas@gaisler.com> |
| |
| * config/sparc/sparc.c (dump_target_flag_bits): Print bit names for |
| LEON and LEON3. |
| |
| 2021-09-14 Xionghu Luo <luoxhu@linux.ibm.com> |
| |
| Backported from master: |
| 2021-09-07 Xionghu Luo <luoxhu@linux.ibm.com> |
| |
| PR target/97142 |
| * config/rs6000/rs6000.md (fmod<mode>3): New define_expand. |
| (remainder<mode>3): Likewise. |
| |
| 2021-09-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2021-09-08 Jonathan Wakely <jwakely@redhat.com> |
| |
| PR c++/60318 |
| * doc/trouble.texi (Copy Assignment): Fix description of |
| behaviour and fix code in example. |
| |
| 2021-09-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-07-12 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/101394 |
| * tree-ssa-pre.c (do_pre_regular_insertion): Avoid inserting |
| copies from abnormals for a full redundancy. |
| |
| 2021-09-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-07-05 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/101291 |
| * cfgloopmanip.c (loop_version): Set the loop copy of the |
| versioned loop to the new loop. |
| |
| 2021-09-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-07-07 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/101173 |
| PR tree-optimization/101280 |
| * gimple-loop-interchange.cc |
| (tree_loop_interchange::valid_data_dependences): Properly |
| guard all dependence checks with DDR_REVERSED_P or its |
| inverse. |
| |
| 2021-09-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-06-24 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/101105 |
| * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list): |
| Only ignore steps when they are equal or scalar order is preserved. |
| |
| 2021-09-06 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-06-11 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/101009 |
| * tree-data-ref.c (build_classic_dist_vector_1): Make sure |
| to set *init_b to true when we encounter a constant equal |
| index pair. |
| (compute_affine_dependence): Also dump the actual DR_REF. |
| |
| 2021-09-03 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-08-19 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/101849 |
| * config/rs6000/rs6000-call.c (rs6000_gimple_fold_mma_builtin): Cast |
| pointer to __vector_pair *. |
| |
| 2021-09-03 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-07-07 Peter Bergner <bergner@linux.ibm.com> |
| |
| * config/rs6000/rs6000-call.c (mma_init_builtins): Use VSX_BUILTIN_LXVP |
| and VSX_BUILTIN_STXVP. |
| |
| 2021-09-03 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-07-02 Peter Bergner <bergner@linux.ibm.com> |
| |
| * config/rs6000/rs6000-builtin.def (BU_MMA_PAIR_LD, BU_MMA_PAIR_ST): |
| New macros. |
| (__builtin_vsx_lxvp, __builtin_vsx_stxvp): New built-ins. |
| * config/rs6000/rs6000-call.c (rs6000_gimple_fold_mma_builtin): Expand |
| lxvp and stxvp built-ins. |
| (mma_init_builtins): Handle lxvp and stxvp built-ins. |
| (builtin_function_type): Likewise. |
| * doc/extend.texi (__builtin_vsx_lxvp, __builtin_mma_stxvp): Document. |
| |
| 2021-09-03 Peter Bergner <bergner@linux.ibm.com> |
| |
| * config/rs6000/rs6000-call.c (mma_init_builtins): Test for |
| MMA_BUILTIN_DISASSEMBLE_ACC and VSX_BUILTIN_DISASSEMBLE_PAIR. |
| (rs6000_gimple_fold_mma_builtin): Likewise. |
| |
| 2021-08-31 Thomas Schwinge <thomas@codesourcery.com> |
| |
| Backported from master: |
| 2021-08-31 Thomas Schwinge <thomas@codesourcery.com> |
| |
| * tree.c (walk_tree_1) <OMP_CLAUSE_TILE>: Handle three operands. |
| |
| 2021-08-27 konglin1 <lingling.kong@intel.com> |
| |
| PR target/101472 |
| * config/i386/sse.md: (<avx512>scattersi<mode>): Add mask operand to |
| UNSPEC_VSIBADDR. |
| (<avx512>scattersi<mode>): Likewise. |
| (*avx512f_scattersi<VI48F:mode>): Merge mask operand to set_dest. |
| (*avx512f_scatterdi<VI48F:mode>): Likewise |
| |
| 2021-08-25 konglin1 <lingling.kong@intel.com> |
| |
| PR target/101471 |
| * config/i386/avx512dqintrin.h (_mm512_fpclass_ps_mask): Fix |
| macro define in O0. |
| (_mm512_mask_fpclass_ps_mask): Ditto. |
| |
| 2021-08-24 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-08-24 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/102035 |
| * config/arm/arm.md (attribute arch): Add fix_vlldm. |
| (arch_enabled): Use it. |
| * config/arm/vfp.md (lazy_store_multiple_insn): Add alternative to |
| use when erratum mitigation is needed. |
| |
| 2021-08-24 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-08-24 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/102035 |
| * config/arm/arm.opt (mfix-cmse-cve-2021-35465): New option. |
| * doc/invoke.texi (Arm Options): Document it. |
| * config/arm/arm-cpus.in (quirk_vlldm): New feature bit. |
| (ALL_QUIRKS): Add quirk_vlldm. |
| (cortex-m33): Add quirk_vlldm. |
| (cortex-m35p, cortex-m55): Likewise. |
| * config/arm/arm.c (arm_option_override): Enable fix_vlldm if |
| targetting an affected CPU and not explicitly controlled on |
| the command line. |
| |
| 2021-08-24 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-08-24 Richard Earnshaw <rearnsha@arm.com> |
| |
| * config/arm/vfp.md (lazy_store_multiple_insn): Rewrite as valid RTL. |
| (lazy_load_multiple_insn): Likewise. |
| |
| 2021-08-24 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-08-23 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/97565 |
| * tree-ssa-structalias.c (ipa_pta_execute): Check in_other_partition |
| in addition to has_gimple_body. |
| |
| 2021-08-23 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-08-05 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/101723 |
| * config/arm/arm-cpus.in (generic-armv7-a): Add quirk to suppress |
| writing .cpu directive in asm output. |
| * config/arm/arm.c (arm_identify_fpu_from_isa): New variable. |
| (arm_last_printed_arch_string): Delete. |
| (arm_last-printed_fpu_string): Delete. |
| (arm_configure_build_target): If use of floating-point/SIMD is |
| disabled, remove all fp/simd related features from the target ISA. |
| (last_arm_targ_options): New variable. |
| (arm_print_asm_arch_directives): Add new parameters. Change order |
| of emitted directives and handle all cases here. |
| (arm_file_start): Always call arm_print_asm_arch_directives, move |
| all generation of .arch/.arch_extension here. |
| (arm_file_end): Call arm_print_asm_arch. |
| (arm_declare_function_name): Call arm_print_asm_arch_directives |
| instead of printing .arch/.fpu directives directly. |
| |
| 2021-08-23 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-08-05 Richard Earnshaw <rearnsha@arm.com> |
| |
| * config/arm/arm.c (arm_configure_build_target): Don't call |
| arm_option_reconfigure_globals. |
| (arm_option_restore): Call arm_option_reconfigure_globals after |
| reconfiguring the target. |
| * config/arm/arm-c.c (arm_pragma_target_parse): Likewise. |
| |
| 2021-08-23 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-08-05 Richard Earnshaw <rearnsha@arm.com> |
| |
| * config/arm/arm.c (arm_configure_build_target): Ensure the target's |
| arch_name is always set. |
| |
| 2021-08-23 Christophe Lyon <christophe.lyon@foss.st.com> |
| |
| Backported from master: |
| 2021-08-23 Christophe Lyon <christophe.lyon@foss.st.com> |
| |
| * config/arm/arm_mve.h: Fix __arm_vctp16q return type. |
| |
| 2021-08-19 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-05-27 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/100767 |
| * config/arm/arm.c (arm_configure_build_target): Remove parameter |
| opts_set, directly check opts parameters for being non-null. |
| (arm_option_restore): Update call to arm_configure_build_target. |
| (arm_option_override): Likewise. |
| (arm_can_inline_p): Likewise. |
| (arm_valid_target_attribute_tree): Likewise. |
| * config/arm/arm-c.c (arm_pragma_target_parse): Likewise. |
| * config/arm/arm-protos.h (arm_configure_build_target): Adjust |
| prototype. |
| |
| 2021-08-17 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-08-03 Richard Sandiford <richard.sandiford@arm.com> |
| |
| * doc/invoke.texi: Document -mtune=neoverse-512tvb and |
| -mcpu=neoverse-512tvb. |
| * config/aarch64/aarch64-cores.def (neoverse-512tvb): New entry. |
| * config/aarch64/aarch64-tune.md: Regenerate. |
| |
| 2021-08-17 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-04-28 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR target/100305 |
| * config/aarch64/constraints.md (Utq): Require the address to |
| be valid for both the element mode and for V2DImode. |
| |
| 2021-08-13 Martin Liska <mliska@suse.cz> |
| |
| PR gcov-profile/100788 |
| * coverage.c (coverage_begin_function): Update function |
| beginning when #line macro is used. |
| |
| 2021-07-31 Xi Ruoyao <xry111@mengyan1223.wang> |
| |
| Backported from master: |
| 2021-07-30 Xi Ruoyao <xry111@mengyan1223.wang> |
| |
| PR target/94780 |
| * config/mips/mips.c (mips_atomic_assign_expand_fenv): Use |
| TARGET_EXPR instead of MODIFY_EXPR. |
| |
| 2021-07-28 Martin Sebor <msebor@redhat.com> |
| |
| PR c/99295 |
| * doc/extend.texi (attribute malloc): Reword and clarify nonaliasing |
| property. |
| |
| 2021-07-20 Martin Jambor <mjambor@suse.cz> |
| |
| Backported from master: |
| 2021-07-08 Martin Jambor <mjambor@suse.cz> |
| |
| PR ipa/101066 |
| * ipa-sra.c (class isra_call_summary): New member |
| m_before_any_store, initialize it in the constructor. |
| (isra_call_summary::dump): Dump the new field. |
| (ipa_sra_call_summaries::duplicate): Copy it. |
| (process_scan_results): Set it. |
| (isra_write_edge_summary): Stream it. |
| (isra_read_edge_summary): Likewise. |
| (param_splitting_across_edge): Only override |
| safe_to_import_accesses if m_before_any_store is set. |
| |
| 2021-07-20 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/100182 |
| * config/i386/sync.md (define_peephole2 atomic_storedi_fpu): |
| Remove. |
| (define_peephole2 atomic_loaddi_fpu): Ditto. |
| |
| 2021-07-19 Bill Schmidt <wschmidt@linux.ibm.com> |
| |
| PR target/101129 |
| * config/rs6000/rs6000-p8swap.c (has_part_mult): New. |
| (rs6000_analyze_swaps): Insns containing a subreg of a mult are |
| not swappable. |
| |
| 2021-07-19 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR rtl-optimization/99927 |
| * combine.c (distribute_notes) [REG_UNUSED]: If the register already |
| is dead, just drop it. |
| |
| 2021-07-02 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * config/i386/i386.c (asm_preferred_eh_data_format): Always use the |
| PIC encodings for PE-COFF targets. |
| |
| 2021-06-24 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backported from master: |
| 2021-06-23 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/101175 |
| * config/i386/i386.md (bsr_rex64): Add zero-flag setting RTX. |
| (bsr): Ditto. |
| (*bsrhi): Remove. |
| (clz<mode>2): Update RTX pattern for additions. |
| |
| 2021-06-18 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| Backported from master: |
| 2021-06-18 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| PR target/100856 |
| * common/config/arm/arm-common.c (arm_canon_arch_option_1): New function |
| derived from arm_canon_arch. |
| (arm_canon_arch_option): Call it. |
| (arm_canon_arch_multilib_option): New function. |
| * config/arm/arm-cpus.in (IGNORE_FOR_MULTILIB): New fgroup. |
| * config/arm/arm.h (arm_canon_arch_multilib_option): New prototype. |
| (CANON_ARCH_MULTILIB_SPEC_FUNCTION): New macro. |
| (MULTILIB_ARCH_CANONICAL_SPECS): New macro. |
| (DRIVER_SELF_SPECS): Add MULTILIB_ARCH_CANONICAL_SPECS. |
| * config/arm/arm.opt (mlibarch): New option. |
| * config/arm/t-rmprofile (MULTILIB_MATCHES): For armv8*-m, replace use |
| of march on RHS with mlibarch. |
| |
| 2021-06-18 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| Backported from master: |
| 2021-06-11 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| PR target/101016 |
| * config/arm/arm_mve.h (__arm_vld1q): Change __ARM_mve_coerce(p0, |
| int8_t const *) to __ARM_mve_coerce1(p0, int8_t *) in the argument for |
| the polymorphic variants matching code. |
| (__arm_vld1q_z): Likewise. |
| (__arm_vld2q): Likewise. |
| (__arm_vld4q): Likewise. |
| (__arm_vldrbq_gather_offset): Likewise. |
| (__arm_vldrbq_gather_offset_z): Likewise. |
| |
| 2021-06-18 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-06-14 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/100777 |
| * config/rs6000/rs6000-call.c (rs6000_gimple_fold_mma_builtin): Use |
| create_tmp_reg_or_ssa_name(). |
| |
| 2021-06-18 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-06-10 Peter Bergner <bergner@linux.ibm.com> |
| |
| * config/rs6000/rs6000-builtin.def (build_pair): New built-in. |
| (build_acc): Likewise. |
| * config/rs6000/rs6000-call.c (mma_expand_builtin): Swap assemble |
| source operands in little-endian mode. |
| (rs6000_gimple_fold_mma_builtin): Handle VSX_BUILTIN_BUILD_PAIR. |
| (mma_init_builtins): Likewise. |
| * config/rs6000/rs6000.c (rs6000_split_multireg_move): Handle endianness |
| ordering for the MMA assemble and build source operands. |
| * doc/extend.texi (__builtin_vsx_build_acc, __builtin_mma_build_pair): |
| Document. |
| (__builtin_mma_assemble_acc, __builtin_mma_assemble_pair): Remove |
| documentation. |
| |
| 2021-06-18 Peter Bergner <bergner@linux.ibm.com> |
| |
| Backported from master: |
| 2021-05-31 Peter Bergner <bergner@linux.ibm.com> |
| |
| PR target/99842 |
| * config/rs6000/predicates.md(mma_assemble_input_operand): Allow |
| indexed form addresses. |
| |
| 2021-06-17 Marius Hillenbrand <mhillen@linux.ibm.com> |
| |
| Backported from master: |
| 2021-06-17 Marius Hillenbrand <mhillen@linux.ibm.com> |
| |
| PR target/100871 |
| * config/s390/vecintrin.h (vec_doublee): Fix to use |
| __builtin_s390_vflls. |
| (vec_floate): Fix to use __builtin_s390_vflrd. |
| |
| 2021-06-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-06-14 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100934 |
| * tree-ssa-dom.c (pass_dominator::execute): Properly |
| mark irreducible regions. |
| |
| 2021-06-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-05-28 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/100791 |
| * tree-inline.c (copy_bb): When processing __builtin_va_arg_pack |
| copy fntype from original call. |
| |
| 2021-06-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-05-11 Richard Biener <rguenther@suse.de> |
| |
| PR ipa/100513 |
| * ipa-param-manipulation.c |
| (ipa_param_body_adjustments::modify_call_stmt): Avoid |
| altering SSA_NAME_DEF_STMT by adjusting the calls LHS |
| via gimple_call_lhs_ptr. |
| |
| 2021-06-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-05-11 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/100509 |
| * gimple-fold.c (fold_gimple_assign): Only call |
| get_symbol_constant_value on register type symbols. |
| |
| 2021-06-16 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-05-10 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100492 |
| * tree-loop-distribution.c (find_seed_stmts_for_distribution): |
| Find nothing when the loop contains an irreducible region. |
| |
| 2021-06-04 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-05-19 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/100333 |
| * config/arm/arm.md (nonsecure_call_internal): Always ensure |
| callee's address is in a register. |
| |
| 2021-06-02 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| Backported from master: |
| 2021-01-21 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/98777 |
| * lra-int.h (lra_pmode_pseudo): New extern. |
| * lra.c (lra_pmode_pseudo): New global. |
| (lra): Set it up. |
| * lra-eliminations.c (eliminate_regs_in_insn): Use it. |
| |
| 2021-06-02 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| Backported from master: |
| 2021-01-20 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/98722 |
| * lra-eliminations.c (eliminate_regs_in_insn): Check that target |
| has no 3-op add insn to transform insns containing two pluses. |
| |
| 2021-06-02 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| Backported from master: |
| 2021-01-12 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| PR target/97969 |
| * lra-eliminations.c (eliminate_regs_in_insn): Add transformation |
| of pattern 'plus (plus (hard reg, const), pseudo)'. |
| |
| 2021-06-02 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backported from master: |
| 2021-06-02 Uroš Bizjak <ubizjak@gmail.com> |
| |
| * config/i386/sse.md (abs<MMXMODEI:mode>2): |
| Change define_insn to define_expand. |
| |
| 2021-06-01 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-05-11 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/99725 |
| * config/arm/arm.c (cmse_nonsecure_call_inline_register_clear): |
| Avoid emitting CFA adjusts on the sp if we have the fp. |
| |
| 2021-05-25 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-05-10 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/99960 |
| * config/arm/mve.md (*mve_mov<mode>): Simplify output code. Use |
| vldrw.u32 and vstrw.32 for V2D[IF]mode loads and stores. |
| |
| 2021-05-20 Alex Coplan <alex.coplan@arm.com> |
| Christophe Lyon <christophe.lyon@linaro.org> |
| |
| PR target/99977 |
| * config/arm/arm.c (arm_split_compare_and_swap): Fix up codegen |
| with negative immediates: ensure we expand cbranchsi4_scratch |
| correctly and ensure we satisfy its constraints. |
| * config/arm/sync.md |
| (@atomic_compare_and_swap<CCSI:arch><NARROW:mode>_1): Don't |
| attempt to tie two output operands together with constraints; |
| collapse two alternatives. |
| (@atomic_compare_and_swap<CCSI:arch><SIDI:mode>_1): Likewise. |
| * config/arm/thumb1.md (cbranchsi4_neg_late): New. |
| |
| 2021-05-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| Backported from master: |
| 2021-05-19 Jonathan Wakely <jwakely@redhat.com> |
| |
| * doc/cpp.texi (Common Predefined Macros): Update documentation |
| for the __GXX_EXPERIMENTAL_CXX0X__ macro. |
| |
| 2021-05-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-01-28 Richard Biener <rguenther@suse.de> |
| |
| PR rtl-optimization/80960 |
| * dse.c (check_mem_read_rtx): Call get_addr on the |
| offsetted address. |
| |
| 2021-05-17 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-05-12 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100566 |
| * tree-ssa-sccvn.c (dominated_by_p_w_unex): Properly handle |
| allow_back for all edge queries. |
| |
| 2021-05-13 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| Backported from master: |
| 2021-05-11 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| Joe Ramsay <joe.ramsay@arm.com> |
| |
| PR target/100419 |
| * config/arm/arm_mve.h (__arm_vstrwq_scatter_offset): Fix wrong arguments. |
| (__arm_vcmpneq): Remove duplicate definition. |
| (__arm_vstrwq_scatter_offset_p): Likewise. |
| (__arm_vmaxq_x): Likewise. |
| (__arm_vmlsdavaq): Likewise. |
| (__arm_vmlsdavaxq): Likewise. |
| (__arm_vmlsdavq_p): Likewise. |
| (__arm_vmlsdavxq_p): Likewise. |
| (__arm_vrmlaldavhaq): Likewise. |
| (__arm_vstrbq_p): Likewise. |
| (__arm_vstrbq_scatter_offset): Likewise. |
| (__arm_vstrbq_scatter_offset_p): Likewise. |
| (__arm_vstrdq_scatter_offset): Likewise. |
| (__arm_vstrdq_scatter_offset_p): Likewise. |
| (__arm_vstrdq_scatter_shifted_offset): Likewise. |
| (__arm_vstrdq_scatter_shifted_offset_p): Likewise. |
| |
| 2021-05-13 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/100563 |
| * config/arm/arm.c (arm_canonicalize_comparison): Correctly |
| canonicalize DImode inequality comparisons against the |
| maximum integral value. |
| |
| 2021-05-12 Martin Sebor <msebor@redhat.com> |
| |
| PR middle-end/100571 |
| * calls.c (maybe_warn_rdwr_sizes): Clear object size if it can't |
| be determined. |
| |
| 2021-05-12 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-05-11 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/99988 |
| * config/aarch64/aarch64-bti-insert.c (aarch64_bti_j_insn_p): New. |
| (rest_of_insert_bti): Avoid inserting duplicate bti j insns for |
| jump table targets. |
| |
| 2021-05-11 Geng Qi <gengqi@linux.alibaba.com> |
| |
| Backported from master: |
| 2021-04-30 Geng Qi <gengqi@linux.alibaba.com> |
| |
| * config/riscv/riscv.opt (march=,mabi=): Negative itself. |
| |
| 2021-05-10 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| Backported from master: |
| 2021-04-20 Segher Boessenkool <segher@kernel.crashing.org> |
| |
| PR target/100108 |
| * config/rs6000/rs6000.c (rs6000_machine_from_flags): Do not consider |
| OPTION_MASK_ISEL. |
| |
| 2021-05-06 Roman Zhuykov <zhroma@ispras.ru> |
| |
| Backported from master: |
| 2021-04-30 Roman Zhuykov <zhroma@ispras.ru> |
| |
| PR rtl-optimization/100225 |
| PR rtl-optimization/84878 |
| * modulo-sched.c (sms_schedule): Use note_stores to skip loops |
| where we have an instruction which touches (writes) any hard |
| register from df->regular_block_artificial_uses set. |
| Allow not-single-set instruction only right before basic block |
| tail. |
| |
| 2021-05-06 Andre Vieira <andre.simoesdiasvieira@arm.com> |
| |
| Backported from master: |
| 2020-09-15 Andre Vieira <andre.simoesdiasvieira@arm.com> |
| |
| * config/arm/arm.c (arm_options_perform_arch_sanity_checks): Do not |
| check +D32 for CMSE if -mfloat-abi=soft |
| |
| 2021-05-06 Srinath Parvathaneni <srinath.parvathaneni@arm.com> |
| |
| Backported from master: |
| 2020-06-23 Andre Vieira <andre.simoesdiasvieira@arm.com> |
| |
| PR target/95646 |
| * config/arm/arm.c: (cmse_nonsecure_entry_clear_before_return): Use |
| 'callee_saved_reg_p' instead of 'calL_used_or_fixed_reg_p'. |
| |
| 2021-05-05 Eric Botcazou <ebotcazou@adacore.com> |
| |
| PR target/100402 |
| * config/i386/i386.c (ix86_compute_frame_layout): For a SEH target, |
| always return the establisher frame for __builtin_frame_address (0). |
| |
| 2021-05-05 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| |
| Backported from master: |
| 2021-05-05 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com> |
| |
| PR rtl-optimization/100263 |
| * postreload.c (move2add_valid_value_p): Ensure register can |
| change mode. |
| |
| 2021-05-05 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/98786 |
| * tree-ssa-phiopt.c (factor_out_conditional_conversion): Avoid |
| adding new uses of abnormals. |
| |
| 2021-05-05 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-04-27 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100278 |
| * tree-ssa-pre.c (compute_avail): Give up when we cannot |
| adjust TBAA beacuse of mismatching bases. |
| |
| 2021-05-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-05-02 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/100375 |
| * config/nvptx/nvptx.c (nvptx_sese_pseudo): Use NULL instead of 0 |
| as first argument of pseudo_node_t constructors. |
| |
| 2021-05-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/100302 |
| * config/aarch64/aarch64.c (aarch64_add_offset_1_temporaries): Use |
| absu_hwi instead of abs_hwi. |
| |
| 2021-05-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/100254 |
| * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION on |
| last1 and last2 insns rather than BB_END (bb1) and BB_END (bb2) insns. |
| |
| 2021-05-04 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/100255 |
| * vmsdbgout.c (ASM_OUTPUT_DEBUG_STRING, vmsdbgout_begin_block, |
| vmsdbgout_end_block, lookup_filename, vmsdbgout_source_line): Remove |
| register keywords. |
| |
| 2021-05-04 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-04-23 Alex Coplan <alex.coplan@arm.com> |
| |
| PR rtl-optimization/100230 |
| * early-remat.c (early_remat::sort_candidates): Use delete[] |
| instead of delete for array allocated with new[]. |
| |
| 2021-04-30 David Edelsohn <dje.gcc@gmail.com> |
| |
| Backported from master: |
| 2021-04-27 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/aix.h (SUBTARGET_DRIVER_SELF_SPECS): New. |
| * config/rs6000/aix64.opt (m64): New. |
| (m32): New. |
| |
| 2021-04-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/96513 |
| * tree-vect-slp.c (struct vdhs_data): New. |
| (vect_detect_hybrid_slp): New walker. |
| (vect_detect_hybrid_slp): Rewrite. |
| |
| 2021-04-29 Richard Earnshaw <rearnsha@arm.com> |
| |
| Backported from master: |
| 2021-04-28 Richard Earnshaw <rearnsha@arm.com> |
| |
| PR target/100311 |
| * config/arm/arm.c (arm_hard_regno_mode_ok): Only allow VPR to be |
| used in HImode. |
| |
| 2021-04-28 Uros Bizjak <ubizjak@gmail.com> |
| |
| Backported from master: |
| 2021-04-23 Uroš Bizjak <ubizjak@gmail.com> |
| |
| PR target/100182 |
| * config/i386/sync.md (FILD_ATOMIC/FIST_ATOMIC FP load peephole2): |
| Copy operand 3 to operand 4. Use sse_reg_operand |
| as operand 3 predicate. |
| (FILD_ATOMIC/FIST_ATOMIC FP load peephole2 with mem blockage): Ditto. |
| (LDX_ATOMIC/STX_ATOMIC FP load peephole2): Ditto. |
| (LDX_ATOMIC/LDX_ATOMIC FP load peephole2 with mem blockage): Ditto. |
| (FILD_ATOMIC/FIST_ATOMIC FP store peephole2): |
| Copy operand 1 to operand 0. |
| (FILD_ATOMIC/FIST_ATOMIC FP store peephole2 with mem blockage): Ditto. |
| (LDX_ATOMIC/STX_ATOMIC FP store peephole2): Ditto. |
| (LDX_ATOMIC/LDX_ATOMIC FP store peephole2 with mem blockage): Ditto. |
| |
| 2021-04-26 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-04-08 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/99647 |
| * config/arm/iterators.md (MVE_vecs): New. |
| (V_elem): Also handle V2DF. |
| * config/arm/mve.md (*mve_mov<mode>): Rename to ... |
| (*mve_vdup<mode>): ... this. Remove second alternative since |
| vec_duplicate of const_int is not canonical RTL, and we don't |
| want to match symbol_refs. |
| (*mve_vec_duplicate<mode>): Delete (pattern is redundant). |
| |
| 2021-04-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-04-13 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/100053 |
| * tree-ssa-sccvn.c (vn_nary_op_get_predicated_value): Do |
| not use optimistic dominance queries for backedges to validate |
| predicated values. |
| (dominated_by_p_w_unex): Add parameter to ignore executable |
| state on backedges. |
| (rpo_elim::eliminate_avail): Adjust. |
| |
| 2021-04-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-04-07 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/99954 |
| * tree-loop-distribution.c: Include tree-affine.h. |
| (generate_memcpy_builtin): Try using tree-affine to prove |
| non-overlap. |
| (loop_distribution::classify_builtin_ldst): Always classify |
| as PKIND_MEMMOVE. |
| |
| 2021-04-26 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-04-06 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/99880 |
| * tree-vect-loop.c (maybe_set_vectorized_backedge_value): Only |
| set vectorized defs of relevant PHIs. |
| |
| 2021-04-24 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR rtl-optimization/96796 |
| * lra-constraints.c (in_class_p): Add a default-false |
| allow_all_reload_class_changes_p parameter. Do not treat |
| reload moves specially when the parameter is true. |
| (get_reload_reg): Try to narrow the class of an existing OP_OUT |
| reload if we're reloading a reload pseudo in a reload instruction. |
| |
| 2021-04-23 YiFei Zhu <zhuyifei1999@gmail.com> |
| |
| Backported from master: |
| 2021-04-23 YiFei Zhu <zhuyifei1999@gmail.com> |
| |
| * config/bpf/bpf.h (ASM_OUTPUT_ALIGNED_BSS): Use .type and .lcomm. |
| |
| 2021-04-23 YiFei Zhu <zhuyifei1999@gmail.com> |
| |
| Backported from master: |
| 2021-04-23 YiFei Zhu <zhuyifei1999@gmail.com> |
| |
| * config/bpf/bpf.h (FUNCTION_BOUNDARY): Set to 64. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-04-14 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR rtl-optimization/99929 |
| * rtl.h (same_vector_encodings_p): New function. |
| * cse.c (exp_equiv_p): Check that CONST_VECTORs have the same encoding. |
| * cselib.c (rtx_equal_for_cselib_1): Likewise. |
| * jump.c (rtx_renumbered_equal_p): Likewise. |
| * lra-constraints.c (operands_match_p): Likewise. |
| * reload.c (operands_match_p): Likewise. |
| * rtl.c (rtx_equal_p_cb, rtx_equal_p): Likewise. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-03-31 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR target/98119 |
| * config/aarch64/aarch64.c |
| (aarch64_vectorize_preferred_vector_alignment): Query the size |
| of the provided SVE vector; do not assume that all SVE vectors |
| have the same size. |
| |
| 2021-04-23 Bin Cheng <bin.cheng@linux.alibaba.com> |
| |
| Backported from master: |
| 2021-04-07 Bin Cheng <bin.cheng@linux.alibaba.com> |
| |
| PR tree-optimization/98736 |
| * tree-loop-distribution.c |
| * (loop_distribution::bb_top_order_init): |
| Compute RPO with programing order preserved by calling function |
| rev_post_order_and_mark_dfs_back_seme. |
| |
| 2021-04-23 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2020-07-31 Richard Biener <rguenther@suse.de> |
| |
| * cfganal.h (rev_post_order_and_mark_dfs_back_seme): Adjust |
| prototype. |
| * cfganal.c (rpoamdbs_bb_data): New struct with pre BB data. |
| (tag_header): New helper. |
| (cmp_edge_dest_pre): Likewise. |
| (rev_post_order_and_mark_dfs_back_seme): Compute SCCs, |
| find SCC exits and perform a DFS walk with extra edges to |
| compute a RPO with adjacent SCC members when requesting an |
| iteration optimized order and populate the toplevel SCC array. |
| * tree-ssa-sccvn.c (do_rpo_vn): Remove ad-hoc computation |
| of max_rpo and fill it in from SCC extent info instead. |
| |
| 2021-04-23 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2020-07-20 Richard Biener <rguenther@suse.de> |
| |
| * cfganal.c (rev_post_order_and_mark_dfs_back_seme): Remove |
| write-only post array. |
| |
| 2021-04-23 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-04-06 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/99748 |
| * config/arm/arm.c (arm_libcall_uses_aapcs_base): Also use base |
| PCS for [su]fix_optab. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-04-14 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR target/99249 |
| * config/aarch64/aarch64.c (aarch64_expand_sve_const_vector_sel): |
| New function. |
| (aarch64_expand_sve_const_vector): Use it for nelts_per_pattern==2. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-03-31 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR rtl-optimization/97141 |
| PR rtl-optimization/98726 |
| * emit-rtl.c (valid_for_const_vector_p): Return true for |
| CONST_POLY_INT_P. |
| * rtx-vector-builder.h (rtx_vector_builder::step): Return a |
| poly_wide_int instead of a wide_int. |
| (rtx_vector_builder::apply_set): Take a poly_wide_int instead |
| of a wide_int. |
| * rtx-vector-builder.c (rtx_vector_builder::apply_set): Likewise. |
| * config/aarch64/aarch64.c (aarch64_legitimate_constant_p): Return |
| false for CONST_VECTORs that cannot be forced to memory. |
| * config/aarch64/aarch64-simd.md (mov<mode>): If a CONST_VECTOR |
| is too complex to force to memory, build it up from individual |
| elements instead. |
| |
| 2021-04-23 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-01-26 Richard Biener <rguenther@suse.de> |
| |
| PR middle-end/98726 |
| * tree.h (vector_cst_int_elt): Remove. |
| * tree.c (vector_cst_int_elt): Use poly_wide_int for computations, |
| make static. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-03-30 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR target/98136 |
| * config/aarch64/aarch64.md (mov<mode>): Pass multi-instruction |
| CONST_INTs to aarch64_expand_mov_immediate when called after RA. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-03-31 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR tree-optimization/98268 |
| * gimple-fold.c (maybe_canonicalize_mem_ref_addr): Call |
| recompute_tree_invariant_for_addr_expr after successfully |
| folding a TARGET_MEM_REF that occurs inside an ADDR_EXPR. |
| |
| 2021-04-23 Richard Sandiford <richard.sandiford@arm.com> |
| |
| Backported from master: |
| 2021-03-31 Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR tree-optimization/99726 |
| * tree-data-ref.c (create_intersect_range_checks_index): Bail |
| out if there is more than one access function SCEV for the loop |
| being versioned. |
| |
| 2021-04-22 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/99216 |
| * config/aarch64/aarch64-sve-builtins.cc |
| (function_builder::add_function): Add placeholder_p argument, use |
| placeholder decls if this is set. |
| (function_builder::add_unique_function): Instead of conditionally adding |
| direct overloads, unconditionally add either a direct overload or a |
| placeholder. |
| (function_builder::add_overloaded_function): Set placeholder_p if we're |
| using C++ overloads. Use the obstack for string storage instead |
| of relying on the tree nodes. |
| (function_builder::add_overloaded_functions): Don't return early for |
| m_direct_overloads: we need to add placeholders. |
| * config/aarch64/aarch64-sve-builtins.h |
| (function_builder::add_function): Add placeholder_p argument. |
| * lto-streamer.h (LTO_minor_version): Bump. |
| |
| 2021-04-21 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/100148 |
| * cprop.c (constprop_register): Use next_nondebug_insn instead of |
| NEXT_INSN. |
| |
| 2021-04-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-16 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/99767 |
| * tree-vect-loop.c (vect_transform_loop): Don't remove just |
| dead scalar .MASK_LOAD calls, but also dead .COND_* calls - replace |
| them by their last argument. |
| |
| 2021-04-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/99905 |
| * combine.c (expand_compound_operation): If pos + len > modewidth, |
| perform the right shift by pos in inner_mode and then convert to mode, |
| instead of trying to simplify a shift of rtx with inner_mode by pos |
| as if it was a shift in mode. |
| |
| 2021-04-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-12 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/99830 |
| * combine.c (simplify_and_const_int_1): Don't optimize varop |
| away if it has side-effects. |
| |
| 2021-04-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR lto/99849 |
| * expr.c (expand_expr_addr_expr_1): Test is_global_var rather than |
| just TREE_STATIC on COMPOUND_LITERAL_EXPR_DECLs. |
| |
| 2021-04-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-10 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/98601 |
| * rtlanal.c (rtx_addr_can_trap_p_1): Allow in assert unknown size |
| not just for BLKmode, but also for VOIDmode. For STRICT_ALIGNMENT |
| unaligned_mems handle VOIDmode like BLKmode. |
| |
| 2021-04-20 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-04-03 Jakub Jelinek <jakub@redhat.com> |
| |
| PR rtl-optimization/99863 |
| * dse.c (replace_read): Drop regs_live argument. Instead of |
| regs_live, use store_insn->fixed_regs_live if non-NULL, |
| otherwise punt if insns sequence clobbers or sets any hard |
| registers. |
| |
| 2021-04-19 Tobias Burnus <tobias@codesourcery.com> |
| |
| Backported from master: |
| 2020-11-27 Tobias Burnus <tobias@codesourcery.com> |
| |
| PR c/97880 |
| * omp-expand.c (expand_oacc_collapse_init, expand_oacc_collapse_vars): |
| Use now passed diff_type. |
| (expand_oacc_for): Take largest type for diff_type, taking tiling |
| and collapsing into account. |
| |
| 2021-04-19 Eric Botcazou <ebotcazou@adacore.com> |
| |
| * config/i386/winnt.c (i386_pe_seh_cold_init): Properly deal with |
| frames larger than the SEH maximum frame size. |
| |
| 2021-04-18 Hafiz Abid Qadeer <abidh@codesourcery.com> |
| |
| Backported from master: |
| 2021-04-11 Hafiz Abid Qadeer <abidh@codesourcery.com> |
| |
| PR middle-end/98088 |
| * omp-expand.c (expand_oacc_collapse_init): Update condition in |
| a gcc_assert. |
| |
| 2021-04-16 Tamar Christina <tamar.christina@arm.com> |
| |
| Backported from master: |
| 2021-04-16 Tamar Christina <tamar.christina@arm.com> |
| |
| PR target/100048 |
| * config/aarch64/aarch64-sve.md (@aarch64_sve_trn1_conv<mode>): New. |
| * config/aarch64/aarch64.c (aarch64_expand_sve_const_pred_trn): Use new |
| TRN optab. |
| * config/aarch64/iterators.md (UNSPEC_TRN1_CONV): New. |
| |
| 2021-04-08 Richard Biener <rguenther@suse.de> |
| |
| PR lto/99898 |
| * lto-streamer.h (LTO_minor_version): Bump. |
| |
| 2021-04-08 Release Manager |
| |
| * GCC 10.3.0 released. |
| |
| 2021-04-04 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-04-03 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.c (machopic_legitimize_pic_address): Check |
| that the current pic register is one of the hard reg set |
| before setting liveness. |
| |
| 2021-04-02 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2020-10-23 Jakub Jelinek <jakub@redhat.com> |
| |
| * Makefile.in (PLUGIN_HEADERS): Add gomp-constants.h and $(EXPR_H). |
| (s-header-vars): Accept not just spaces but also tabs between *_H name |
| and =. Handle common/config/ headers similarly to config. Don't |
| throw away everything from first ... to last / on the remaining |
| string, instead skip just ... to corresponding last / without |
| intervening spaces and tabs. |
| (install-plugin): Treat common/config headers like config headers. |
| * config/i386/t-i386 (TM_H): Add |
| $(srcdir)/common/config/i386/i386-cpuinfo.h. |
| |
| 2021-04-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR c++/98481 |
| * common.opt (fabi-version): Default to 14. |
| |
| 2021-04-01 Martin Jambor <mjambor@suse.cz> |
| |
| Backported from master: |
| 2021-04-01 Martin Jambor <mjambor@suse.cz> |
| |
| PR tree-optimization/97009 |
| * tree-sra.c (access_or_its_child_written): New function. |
| (propagate_subaccesses_from_rhs): Use it instead of a simple grp_write |
| test. |
| |
| 2021-04-01 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/99856 |
| * tree-vect-patterns.c (vect_recog_over_widening_pattern): Promote |
| precision to vector element precision. |
| |
| 2021-03-31 Jan Hubicka <jh@suse.cz> |
| |
| Backported from master: |
| 2021-03-31 Jan Hubicka <hubicka@ucw.cz> |
| |
| PR ipa/98265 |
| * cif-code.def (USES_COMDAT_LOCAL): Make CIF_FINAL_NORMAL. |
| |
| 2021-03-31 Vladimir N. Makarov <vmakarov@redhat.com> |
| |
| PR rtl-optimization/96264 |
| * lra-remat.c (reg_overlap_for_remat_p): Check also output insn |
| hard regs. |
| |
| 2021-03-31 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> |
| |
| PR tree-optimization/97849 |
| * tree-if-conv.c (tree_if_conversion): Move ssa_name |
| replacement code from ifcvt_local_dce to this function |
| before calling do_rpo_vn. |
| |
| 2021-03-31 Jakub Jelinek <jakub@redhat.com> |
| |
| Backported from master: |
| 2021-03-31 Jakub Jelinek <jakub@redhat.com> |
| Richard Sandiford <richard.sandiford@arm.com> |
| |
| PR target/99813 |
| * config/aarch64/aarch64.md (*add<mode>3_poly_1): Swap Uai and Uav |
| constraints on operands[2] and similarly 0 and rk constraints |
| on operands[1] corresponding to that. |
| |
| 2021-03-31 Jan Hubicka <hubicka@ucw.cz> |
| |
| * common/config/i386/i386-common.c (ARRAY_SIZE): Make pta_size signed. |
| |
| 2021-03-31 Martin Liska <mliska@suse.cz> |
| |
| Backported from master: |
| 2021-03-24 Martin Liska <mliska@suse.cz> |
| |
| PR target/99753 |
| * common/config/i386/i386-common.c (ARRAY_SIZE): Fix off-by-one |
| error. |
| * config/i386/i386-options.c (ix86_option_override_internal): |
| Add run-time assert. |
| |
| 2021-03-31 Jan Hubicka <jh@suse.cz> |
| |
| Backported from master: |
| 2021-03-18 Jan Hubicka <hubicka@ucw.cz> |
| |
| * config/i386/x86-tune-costs.h (struct processor_costs): Fix costs of |
| integer divides1. |
| |
| 2021-03-31 Jan Hubicka <hubicka@ucw.cz> |
| |
| * config/i386/x86-tune-costs.h (struct processor_costs): Remove |
| mask register costs. |
| |
| 2021-03-31 Jan Hubicka <jh@suse.cz> |
| |
| Backported from master: |
| 2021-03-15 Jan Hubicka <hubicka@ucw.cz> |
| |
| * config/i386/i386-options.c (processor_cost_table): Add znver3_cost. |
| * config/i386/x86-tune-costs.h (znver3_cost): New gobal variable; copy |
| of znver2_cost. |
| |
| 2021-03-31 Jan Hubicka <jh@suse.cz> |
| |
| * common/config/i386/i386-common.c: Add znver3. |
| * common/config/i386/i386-cpuinfo.h (enum processor_types): Add |
| AMDFAM19H |
| (enum processor_subtypes): Add AMDFAM19H_ZNVER3. |
| (processor_alias_table): Add znver3 and AMDFAM19H entry. |
| * common/config/i386/i386-cpuinfo.h (processor_types): Add |
| AMDFAM19H. |
| (processor_subtypes): AMDFAM19H_ZNVER3. |
| * config.gcc (i[34567]86-*-linux* | ...): Likewise. |
| * config/i386/driver-i386.c: (host_detect_local_cpu): Let |
| -march=native recognize znver3 processors. |
| * config/i386/i386-c.c (ix86_target_macros_internal): Add |
| znver3. |
| * config/i386/i386-options.c (m_znver3): New definition. |
| (m_ZNVER): Include m_znver3. |
| (processor_cost_table): Add znver3. |
| * config/i386/i386.c (ix86_reassociation_width): Likewise. |
| * config/i386/i386.h (TARGET_znver3): New definition. |
| (enum processor_type): Add PROCESSOR_ZNVER3. |
| * config/i386/i386.md (define_attr "cpu"): Add znver3. |
| * config/i386/x86-tune-sched.c: (ix86_issue_rate): Likewise. |
| (ix86_adjust_cost): Likewise. |
| * config/i386/x86-tune.def (X86_TUNE_AVOID_256FMA_CHAINS): |
| Likewise. |
| * config/i386/znver1.md: Add new reservations for znver3. |
| * doc/extend.texi: Add details about znver3. |
| * doc/invoke.texi: Likewise. |
| |
| 2021-03-31 H.J. Lu <hjl.tools@gmail.com> |
| |
| Backported from master: |
| 2020-06-24 H.J. Lu <hjl.tools@gmail.com> |
| |
| PR target/95842 |
| * common/config/i386/i386-common.c (processor_alias_table): Add |
| processor model and priority to each entry. |
| (pta_size): Updated with -6. |
| (num_arch_names): New. |
| * common/config/i386/i386-cpuinfo.h: New file. |
| * config/i386/i386-builtins.c (feature_priority): Removed. |
| (processor_model): Likewise. |
| (_arch_names_table): Likewise. |
| (arch_names_table): Likewise. |
| (_isa_names_table): Replace P_ZERO with P_NONE. |
| (get_builtin_code_for_version): Replace P_ZERO with P_NONE. Use |
| processor_alias_table. |
| (fold_builtin_cpu): Replace arch_names_table with |
| processor_alias_table. |
| * config/i386/i386.h: Include "common/config/i386/i386-cpuinfo.h". |
| (pta): Add model and priority. |
| (num_arch_names): New. |
| |
| 2021-03-31 Kyrylo Tkachov <kyrylo.tkachov@arm.com> |
| |
| PR target/99037 |
| * config/aarch64/aarch64-simd.md (move_lo_quad_internal_<mode>): Use |
| aarch64_simd_or_scalar_imm_zero to match zeroes. Remove pattern |
| matching const_int 0. |
| (move_lo_quad_internal_be_<mode>): Likewise. |
| (move_lo_quad_<mode>): Update for the above. |
| * config/aarch64/iterators.md (VQ_2E): Delete. |
| |
| 2021-03-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR tree-optimization/99777 |
| * fold-const.c (extract_muldiv_1): For conversions, punt on casts from |
| types other than scalar integral types. |
| |
| 2021-03-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/99334 |
| * dwarf2out.h (struct dw_fde_node): Add rule18 member. |
| * dwarf2cfi.c (dwarf2out_frame_debug_expr): When handling (set hfp sp) |
| assignment with drap_reg active, queue reg save for hfp with offset 0 |
| and flush queued reg saves. When handling a push with rule18, |
| defer queueing reg save for hfp and just assert the offset is 0. |
| (scan_trace): Assert that fde->rule18 is false. |
| |
| 2021-03-30 Jakub Jelinek <jakub@redhat.com> |
| |
| PR debug/99388 |
| * dwarf2out.c (insert_float): Change return type from void to |
| unsigned, handle GET_MODE_SIZE (mode) == 2 and return element size. |
| (mem_loc_descriptor, loc_descriptor, add_const_value_attribute): |
| Adjust callers. |
| |
| 2021-03-30 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/99824 |
| * stor-layout.c (set_min_and_max_values_for_integral_type): |
| Assert the precision is within the bounds of |
| WIDE_INT_MAX_PRECISION. |
| * tree-ssa-sccvn.c (ao_ref_init_from_vn_reference): Use |
| the outermost component ref only to lower the access size |
| and initialize that from the access type. |
| |
| 2021-03-29 Alex Coplan <alex.coplan@arm.com> |
| |
| Backported from master: |
| 2021-03-22 Alex Coplan <alex.coplan@arm.com> |
| |
| PR target/97252 |
| * config/arm/arm-protos.h (neon_make_constant): Add generate |
| argument to guard emitting insns, default to true. |
| * config/arm/arm.c (arm_legitimate_constant_p_1): Reject |
| CONST_VECTORs which neon_make_constant can't handle. |
| (neon_vdup_constant): Add generate argument, avoid emitting |
| insns if it's not set. |
| (neon_make_constant): Plumb new generate argument through. |
| * config/arm/constraints.md (Ui): New. Use it... |
| * config/arm/mve.md (*mve_mov<mode>): ... here. |
| * config/arm/vec-common.md (movv8hf): Use neon_make_constant to |
| synthesize constants. |
| |
| 2021-03-28 David Edelsohn <dje.gcc@gmail.com> |
| |
| Backported from master: |
| 2021-03-28 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): Do not add |
| XCOFF TLS reloc decorations. |
| |
| 2021-03-26 Iain Buclaw <ibuclaw@gdcproject.org> |
| |
| Backported from master: |
| 2021-03-26 Iain Buclaw <ibuclaw@gdcproject.org> |
| |
| PR ipa/99466 |
| * tree-emutls.c (get_emutls_init_templ_addr): Mark initializer of weak |
| TLS declarations as public. |
| |
| 2021-03-25 Stam Markianos-Wright <stam.markianos-wright@arm.com> |
| |
| PR tree-optimization/96974 |
| * tree-vect-stmts.c (vect_get_vector_types_for_stmt): Replace assert |
| with graceful exit. |
| |
| 2021-03-25 Xionghu Luo <luoxhu@linux.ibm.com> |
| |
| Backported from master: |
| 2021-03-25 Xionghu Luo <luoxhu@linux.ibm.com> |
| |
| PR target/97329 |
| * config/rs6000/rs6000.c (power8_costs): Change l2 cache |
| from 256 to 512. |
| |
| 2021-03-24 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.c (output_objc_section_asm_op): Avoid extra |
| objective-c section switches unless the linker needs them. |
| * config/darwin.c (darwin_objc2_section): Allow for |
| values > 1 to represent the next runtime. |
| (darwin_objc1_section): Likewise. |
| * config/darwin.c (darwin_globalize_label): Add protocol |
| meta-data labels to the set that are global. Make a subset of |
| metadate symbols global. |
| (darwin_label_is_anonymous_local_objc_name): Make a subset of |
| metadata symbols linker-visible. |
| (darwin_override_options): Track more target OS versions, make |
| the next_runtime version track this (unless it's set to 0 for |
| GNU runtime). |
| * config/darwin.h (NEXT_OBJC_RUNTIME): Set the default |
| next runtime value to be 10.5.8. |
| |
| 2021-03-24 Jakub Jelinek <jakub@redhat.com> |
| |
| PR target/99540 |
| * config/aarch64/aarch64.c (aarch64_add_offset): Tell |
| expand_mult to perform an unsigned rather than a signed |
| multiplication. |
| |
| 2021-03-24 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-03-15 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/98834 |
| * tree-ssa-sccvn.c (vn_reference_lookup_3): Handle missing |
| subsetting by truncating the access size. |
| |
| 2021-03-24 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-02-08 Richard Biener <rguenther@suse.de> |
| |
| PR lto/96591 |
| * tree.c (walk_tree_1): Walk VECTOR_CST elements. |
| |
| 2021-03-24 Richard Biener <rguenther@suse.de> |
| |
| Backported from master: |
| 2021-03-22 Richard Biener <rguenther@suse.de> |
| |
| PR tree-optimization/99694 |
| * tree-ssa-sccvn.c (visit_phi): Ignore edges with the |
| PHI result. |
| |
| 2021-03-23 H.J. Lu <hjl.tools@gmail.com> |
| |
| Backported from master: |
| 2021-03-23 H.J. Lu <hjl.tools@gmail.com> |
| |
| PR target/99704 |
| * config/i386/cpuid.h (__cpuid): Add __volatile__. |
| (__cpuid_count): Likewise. |
| |
| 2021-03-22 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2020-10-10 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin-sections.def (objc2_data_section): New. |
| (objc2_ivar_section): New. |
| * config/darwin.c (darwin_objc2_section): Act on Protocol and |
| ivar refs. |
| |
| 2021-03-22 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2020-10-10 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin-sections.def (objc2_class_names_section, |
| objc2_method_names_section, objc2_method_types_section): New |
| * config/darwin.c (output_objc_section_asm_op): Output new |
| sections. (darwin_objc2_section): Select new sections where |
| used. |
| |
| 2021-03-22 David Edelsohn <dje.gcc@gmail.com> |
| |
| Backported from master: |
| 2021-01-30 David Edelsohn <dje.gcc@gmail.com> |
| |
| * config/rs6000/rs6000.opt (mabi=vec-extabi): New. |
| (mabi=vec-default): New. |
| * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define |
| __EXTABI__ for AIX Vector extended ABI. |
| * config/rs6000/rs6000.c (rs6000_debug_reg_global): Print AIX Vector |
| extabi info. |
| (conditional_register_usage): If AIX vec_extabi enabled, vs20-vs31 |
| are non-volatile. |
| * doc/invoke.texi (PowerPC mabi): Add AIX vec-extabi and vec-default. |
| |
| 2021-03-22 Kito Cheng <kito.cheng@sifive.com> |
| |
| Backported from master: |
| 2021-03-22 Kito Cheng <kito.cheng@sifive.com> |
| |
| PR target/99702 |
| * config/riscv/riscv.c (riscv_expand_block_move): Get RTL value |
| after type checking. |
| |
| 2021-03-21 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-03-01 Iain Sandoe <iain@sandoe.co.uk> |
| |
| PR target/44107 |
| PR target/48097 |
| * config/darwin-protos.h (darwin_should_restore_cfa_state): New. |
| * config/darwin.c (darwin_should_restore_cfa_state): New. |
| * config/darwin.h (TARGET_ASM_SHOULD_RESTORE_CFA_STATE): New. |
| * doc/tm.texi: Regenerated. |
| * doc/tm.texi.in: Document TARGET_ASM_SHOULD_RESTORE_CFA_STATE. |
| * dwarf2cfi.c (connect_traces): If the target requests, restore |
| the CFA expression after a DW_CFA_restore. |
| * target.def (TARGET_ASM_SHOULD_RESTORE_CFA_STATE): New hook. |
| |
| 2021-03-21 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Move the spec |
| for the Darwin10 unwinder stub from here .. |
| * config/darwin.h (LINK_COMMAND_SPEC_A): ... to here. |
| here... |
| * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Move from here.. |
| * config/darwin.h (LINK_GCC_C_SEQUENCE_SPEC): ... to here. |
| * config/darwin9.h (STACK_CHECK_STATIC_BUILTIN): Move from here.. |
| * config/darwin.h (STACK_CHECK_STATIC_BUILTIN): .. to here. |
| * config.gcc: Compute default version information |
| from the configured target. Likewise defaults for |
| ld64. Delete reference to the now removed darwin8.h |
| * config/darwin10.h: Removed. |
| * config/darwin12.h: Removed. |
| * config/darwin9.h: Removed. |
| * config/rs6000/darwin8.h: Removed. |
| |
| 2021-03-21 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2021-01-02 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.h (DSYMUTIL_SPEC): Default to DWARF |
| (ASM_DEBUG_SPEC):Only define if the assembler supports |
| stabs. |
| (PREFERRED_DEBUGGING_TYPE): Default to DWARF. |
| (DARWIN_PREFER_DWARF): Define. |
| * config/darwin9.h (PREFERRED_DEBUGGING_TYPE): Remove. |
| (DARWIN_PREFER_DWARF): Likewise |
| (DSYMUTIL_SPEC): Likewise. |
| (COLLECT_RUN_DSYMUTIL): Likewise. |
| (ASM_DEBUG_SPEC): Likewise. |
| (ASM_DEBUG_OPTION_SPEC): Likewise. |
| |
| 2021-03-21 Iain Sandoe <iain@sandoe.co.uk> |
| |
| Backported from master: |
| 2020-08-03 Iain Sandoe <iain@sandoe.co.uk> |
| |
| * config/darwin.h (ASM_DECLARE_FUNCTION_NAME): UNDEF before |
| use. |
|