]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/ChangeLog
xtensa: fix PR target/90922
[thirdparty/gcc.git] / gcc / ChangeLog
index e3799aec817e77eacb5909bc3f2afeef62d9e0fd..d8b56f6472fdc3166dea2d327dca4798fea8a467 100644 (file)
@@ -1,3 +1,337 @@
+2019-06-18  Max Filippov  <jcmvbkbc@gmail.com>
+
+       PR target/90922
+       * config/xtensa/xtensa.c (xtensa_expand_prologue): Add stack
+       pointer adjustment for the case of no callee-saved registers and
+       stack frame bigger than 128 bytes.
+
+2019-06-18  Thomas Schwinge  <thomas@codesourcery.com>
+
+       PR middle-end/90862
+       * omp-low.c (check_omp_nesting_restrictions): Handle
+       GF_OMP_TARGET_KIND_OACC_DECLARE.
+
+2019-06-18  Uroš Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (@cmp<mode>_1): Rename from cmp<mode>_1.
+       (@add<mode>3_carry): Rename from add<mode>3_carry.
+       (@sub<mode>3_carry_ccc): Rename from sub<mode>3_carry_ccc.
+       (@sub<mode>3_carry_ccgz): Rename form sub<mode>3_carry_ccgz.
+       (@copysign<mode>3_const): Rename from copysign<mode>3_const.
+       (@copysign<mode>3_var): Rename from copysign<mode>3_var.
+       (@xorsign<mode>3_1): Rename from xorsign<mode>3_1.
+       (@x86_shift<mode>_adj_1): Rename from x86_shift<mode>_adj_1.
+       (@x86_shift<mode>_adj_2): Rename from x86_shift<mode>_adj_2.
+       (@x86_shift<mode>_adj_3): Rename from x86_shift<mode>_adj_3.
+       (cmpstrnsi): Use gen_cmp_1.
+       (lwp_slwpcb): Use gen_lwp_slwpcb_1.
+       (@lwp_slwpcb<mode>_1): Rename from lwp_slwpcb<mode>_1.
+       (@umonitor_<mode>): Rename from umonitor_<mode>.
+       * config/i386/i386-expand.c (ix86_expand_copysign):
+       Use gen_copysign3_const and gen_copysign3_var.
+       (ix86_expand_xorsign): Use gen_xorsign3_1.
+       (ix86_expand_branch): Use gen_sub3_carry_ccc,
+       gen_sub3_carry_ccgz and gen_cmp1.
+       (ix86_expand_int_addcc): Use gen_sub3_carry and gen_add3_carry.
+       (ix86_split_ashl): Use gen_x86_shift_adj_1 and gen_x86_shift_adj_2.
+       (ix86_split_ashr): Use gen_x86_shift_adj_1 and gen_x86_shift_adj_3.
+       (ix86_split_lshr): Ditto.
+       (ix86_expand_builtin) <case IX86_BUILTIN_UMONITOR>: Use gen_umonitor.
+
+2019-06-18  Jason Merrill  <jason@redhat.com>
+
+       * tree.c (build_constructor): Add MEM_STAT_DECL.
+
+2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * config/aarch64/aarch64-modes.def (CC_NZC): New CC_MODE.
+       * config/aarch64/aarch64-sve.md (*<optab><mode>3_cc)
+       (ptest_ptrue<mode>, while_ult<GPI:mode><PRED_ALL:mode>)
+       (*while_ult<GPI:mode><PRED_ALL:mode>_cc, *cmp<cmp_op><mode>)
+       (*cmp<cmp_op><mode>_ptest, *cmp<cmp_op><mode>_cc)
+       (*pred_cmp<cmp_op><mode>_combine, *pred_cmp<cmp_op><mode>)
+       (vec_cmp<mode><vpred>, vec_cmpu<mode><vpred>, cbranch<mode>4):
+       Use CC_NZC instead of CC.
+       * config/aarch64/aarch64.md (condjump): Print a '.' in SVE conditions.
+       * config/aarch64/aarch64.c (aarch64_sve_condition_codes): New variable.
+       (aarch64_print_operand): Handle E_CC_NZCmode.
+       (aarch64_emit_sve_ptrue_op_cc): Use gen_set_clobber_cc_nzc instead
+       of gen_set_clobber_cc.
+
+2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * config/aarch64/aarch64-sve.md: Tabify file.
+
+2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * config/aarch64/aarch64-protos.h (aarch64_pfalse_reg): Declare.
+       * config/aarch64/aarch64.c (aarch64_pfalse_reg): New function.
+       * config/aarch64/aarch64-sve.md: Use it.
+
+2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * config/aarch64/aarch64-protos.h (aarch64_ptrue_reg): Declare.
+       * config/aarch64/aarch64.c (aarch64_ptrue_reg): New functions.
+       (aarch64_expand_sve_widened_duplicate, aarch64_expand_sve_mem_move)
+       (aarch64_maybe_expand_sve_subreg_move, aarch64_evpc_rev_local)
+       (aarch64_expand_sve_vec_cmp_int): Use it.
+       (aarch64_expand_sve_vec_cmp_float): Likewise.
+       * config/aarch64/aarch64-sve.md: Likewise throughout.
+
+2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * config/aarch64/aarch64-sve.md (*cond_<optab><mode>_0): Delete.
+       (*cond_<optab><mode>_z): Fold into...
+       (*cond_<optab><mode>_any): ...here.  Also handle cases in which
+       operand 4 can be tied to operand 0 (either inherently or via RA).
+
+2019-06-18  Richard Biener  <rguenther@suse.de>
+
+       PR debug/90900
+       * cfgexpand.c (expand_debug_expr): Treat NOTE_P DECL_RTL
+       as if optimized away.
+
+2019-06-18  Tom de Vries  <tdevries@suse.de>
+
+       * config/nvptx/nvptx-protos.h (gen_set_softstack_insn): Remove.
+       * config/nvptx/nvptx.c (gen_set_softstack_insn): Remove.
+       * config/nvptx/nvptx.md (define_insn "set_softstack_<mode>"):
+       Rename to ...
+       (define_insn "@set_softstack_<mode>"): ... this.
+       (define_insn "omp_simt_enter_<mode>"): Rename to ...
+       (define_insn "@omp_simt_enter_<mode>"): ... this.
+       (define_insn "omp_simt_exit_<mode>"): Rename to ...
+       (define_insn "@omp_simt_exit_<mode>"): ... this.
+
+2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * tree-vect-loop-manip.c (vect_set_loop_masks_directly): Remove
+       vf parameter.  Restore the previous iv step of nscalars_step,
+       but give it iv_type rather than compare_type.  Tweak code order
+       to match the comments.
+       (vect_set_loop_condition_masked): Update accordingly.
+       * tree-vect-loop.c (vect_verify_full_masking): Use "unsigned int"
+       for iv_precision.  Tweak comment formatting.
+
+2019-06-18  Iain Sandoe  <iain@sandoe.co.uk>
+
+        * config/darwin.c: Strip trailing whitespace.
+
+2019-06-18  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * config/darwin.c (darwin_emit_unwind_label): New default to false.
+       (darwin_override_options): Set darwin_emit_unwind_label as needed.
+
+2019-06-18  Martin Jambor  <mjambor@suse.cz>
+
+       PR ipa/90889
+       * ipa-cp.c (ignore_edge_p): Do not ignore edges when only the
+       caller does not have flag_ipa_cp set.
+
+2019-06-18  Alejandro Martinez  <alejandro.martinezvicente@arm.com>
+
+       * config/aarch64/aarch64-sve.md (mask_fold_left_plus_<mode>): Renamed
+       from "*fold_left_plus_<mode>", updated operands order.
+       * doc/md.texi (mask_fold_left_plus_@var{m}): Documented new optab.
+       * internal-fn.c (mask_fold_left_direct): New define.
+       (expand_mask_fold_left_optab_fn): Likewise.
+       (direct_mask_fold_left_optab_supported_p): Likewise.
+       * internal-fn.def (MASK_FOLD_LEFT_PLUS): New internal function.
+       * optabs.def (mask_fold_left_plus_optab): New optab.
+       * tree-vect-loop.c (mask_fold_left_plus_optab): New function to get a
+       masked internal_fn for a reduction ifn.
+       (vectorize_fold_left_reduction): Add support for masking reductions.
+
+2019-06-18  Kewen Lin  <linkw@gcc.gnu.org>
+
+       PR middle-end/80791
+       * target.def (predict_doloop_p): New hook.
+       * targhooks.h (default_predict_doloop_p): New declaration.
+       * targhooks.c (default_predict_doloop_p): New function.
+       * doc/tm.texi.in (TARGET_PREDICT_DOLOOP_P): New hook.
+       * doc/tm.texi: Regenerate.
+       * config/rs6000/rs6000.c (rs6000_predict_doloop_p): New function.
+       (TARGET_PREDICT_DOLOOP_P): New macro.
+       * tree-ssa-loop-ivopts.c (generic_predict_doloop_p): New function.
+
+2019-06-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * omp-low.c (struct omp_context): Add scan_inclusive field.
+       (scan_omp_1_stmt) <case GIMPLE_OMP_SCAN>: Set ctx->scan_inclusive
+       if inclusive scan.
+       (struct omplow_simd_context): Add lastlane member.
+       (lower_rec_simd_input_clauses): Add rvar argument, handle inscan
+       reductions.  Build 2 or 3 argument .GOMP_SIMD_LANE calls rather than
+       1 or 2 argument.
+       (lower_rec_input_clauses): Handle inscan reductions in simd contexts.
+       (lower_lastprivate_clauses): Set TREE_THIS_NOTRAP on the ARRAY_REF.
+       (lower_omp_scan): New function.
+       (lower_omp_1) <case GIMPLE_OMP_SCAN>: Use lower_omp_scan.
+       * tree-ssa-dce.c (eliminate_unnecessary_stmts): For IFN_GOMP_SIMD_LANE
+       check 3rd argument if present rather than 2nd.
+       * tree-vectorizer.h (struct _loop_vec_info): Add scan_map member.
+       (struct _stmt_vec_info): Change simd_lane_access_p from bool into
+       2-bit bitfield.
+       * tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Initialize
+       scan_map.  For IFN_GOMP_SIMD_LANE check 3rd argument if present rather
+       than 2nd.
+       (_loop_vec_info::~_loop_vec_info): Delete scan_map.
+       * tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Allow two
+       different STMT_VINFO_SIMD_LANE_ACCESS_P refs if they have the same
+       init.
+       (vect_find_stmt_data_reference): Encode in ->aux the 2nd
+       IFN_GOMP_SIMD_LANE argument.
+       (vect_analyze_data_refs): Set STMT_VINFO_SIMD_LANE_ACCESS_P from the
+       encoded ->aux value.
+       * tree-vect-stmts.c: Include attribs.h.
+       (vectorizable_call): Adjust comment about IFN_GOMP_SIMD_LANE.
+       (scan_operand_equal_p, check_scan_store, vectorizable_scan_store): New
+       functions.
+       (vectorizable_load): For STMT_VINFO_SIMD_LANE_ACCESS_P tests use != 0.
+       (vectorizable_store): Handle STMT_VINFO_SIMD_LANE_ACCESS_P > 1.
+
+2019-06-17  Uroš Bizjak  <ubizjak@gmail.com>
+
+       PR target/62055
+       * config/i386/i386.md (*nabstf2_1): New insn pattern.
+       (*nabs<mode>2_1): Ditto.
+       (nabs sse-reg splitter): New splitter.
+       * config/i386/sse.md (*nabs<mode>2): New insn_and_split pattern.
+
+2019-06-17  Jan Hubicka  <hubicka@ucw.cz>
+
+       PR bootstrap/90873.
+       * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Fix
+       TMR index check.
+
+2019-06-17  Tom de Vries  <tdevries@suse.de>
+
+       * config/nvptx/nvptx-protos.h (gen_set_softstack_insn): Declare.
+       * config/nvptx/nvptx.c (gen_set_softstack_insn): New function.
+       * config/nvptx/nvptx.md (define_insn "set_softstack_insn"): Rename to
+       ...
+       (define_insn "set_softstack_<mode>"): ... this.  Use P iterator on
+       match_operand 0.
+       (define_insn "omp_simt_enter_insn"): Rename to ...
+       (define_insn "omp_simt_enter_<mode>"): ... this.  Use P iterator on
+       match_operand 0, 1 and 2, as well as the unspec_volatile result.
+       (define_expand "omp_simt_enter): Use gen_omp_simt_enter_di and
+       gen_omp_simt_enter_si.
+       (define_expand "omp_simt_exit"): New.
+       (define_insn "omp_simt_exit"): Rename to ...
+       (define_insn "omp_simt_exit_<mode>"): ... this.  Use P iterator on
+       match_operand 0.
+
+2019-06-17  Matthew Green  <mrg@eterna.com.au>
+           Maya Rashish  <coypu@sdf.org>
+
+       * config.gcc (aarch64*-*-netbsd*): New target.
+       * config/aarch64/aarch64-netbsd.h: New file.
+       * config/aarch64/t-aarch64-netbsd: Likewise.
+
+2019-06-17  Jan Hubicka  <hubicka@ucw.cz>
+
+       * tree-ssa-alias.c (aliasing_component_refs_p): Consider only
+       the access path from base to first VIEW_CONVERT_EXPR or
+       BIT_FIELD_REF.
+
+2019-06-17  Jan Hubicka  <hubicka@ucw.cz>
+
+       * tree-ssa-alias.c (nonoverlapping_component_refs_p): Also truncate
+       access path on BIT_FIELD_REFs.
+
+2019-06-17  Martin Liska  <mliska@suse.cz>
+
+       PR ipa/90874
+       * ipa-utils.h (odr_type_p): Remove dead code.
+
+2019-06-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac (ld_vers) <*-*-solaris2*>: Remove support for
+       alternative Solaris 11.4 format.
+       * configure: Regenerate.
+
+2019-06-17  Tom de Vries  <tdevries@suse.de>
+
+       * config/nvptx/nvptx.md (define_insn "call_insn"): Rename to ...
+       (define_insn "call_insn_<mode>"): ... this.  Use P iterator on
+       match_operand 0.
+       (define_insn "call_value_insn"): Rename to ...
+       (define_insn "call_value_insn_<mode>"): this.  Use P iterator on
+       match_operand 0.
+       (define_insn "nvptx_red_partition"): Set unspec_volatile result mode to
+       DI.
+
+2019-06-16  John David Anglin  <danglin@gcc.gnu.org>
+
+       PR middle-end/64242
+       * config/pa/pa.md (nonlocal_goto): Restore frame pointer last.  Add
+       frame clobbers and schedule block.
+       (builtin_longjmp): Likewise.
+
+2019-06-16  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
+
+       * config/msp430/msp430.c (msp430_expand_helper): Setup arguments which
+       describe how to perform MSPABI compliant 64-bit shift.
+       * config/msp430/msp430.md (ashldi3): New define_expand.
+       (ashrdi3): New define_expand.
+       (lshrdi3): New define_expand.
+
+2019-06-16  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
+
+       * doc/sourcebuild.texi: Document new effective target keyword
+       longlong64.
+
+2019-06-16  Jan Hubicka  <hubicka@ucw.cz>
+
+       * tree-ssa-alias.c (indirect_ref_may_alias_decl_p,
+       indirect_refs_may_alias_p): Revert accidental commits.
+
+       * tree-ssa-alias.c (aliasing_component_refs_p): Watch for arrays
+       at the end of structures.
+
+2019-06-16  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * config/darwin.c (machopic_indirect_call_target): Use renamed
+       darwin_picsymbol_stubs to decide on output.
+       (darwin_override_options): Handle darwin_picsymbol_stubs.
+       * config/darwin.h (MIN_LD64_OMIT_STUBS): New.
+       (LD64_VERSION): Revise default.
+       * config/darwin.opt: (mpic-symbol-stubs): New option.
+       (darwin_picsymbol_stubs): New variable.
+       * config/i386/darwin.h (TARGET_MACHO_BRANCH_ISLANDS):
+       rename to TARGET_MACHO_PICSYM_STUBS.
+       * config/i386/i386.c (output_pic_addr_const): Likewise.
+       * config/i386/i386.h Likewise.
+       * config/rs6000/darwin.h: Likewise.
+       * config/rs6000/rs6000.c (rs6000_call_darwin_1): Use renamed
+       darwin_picsymbol_stubs.
+
+2019-06-16  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * config/darwin.opt (prebind, noprebind, seglinkedit,
+       noseglinkedit): Add RejectNegative.
+
+2019-06-16  Jan Hubicka  <hubicka@ucw.cz>
+
+       * tree-ssa-alias.c (nonoverlapping_component_refs_p): Fix pasto
+       in my previous patch.
+
+2019-06-16  Tom de Vries  <tdevries@suse.de>
+
+       PR tree-optimization/89376
+       * tree-parloops.c (oacc_entry_exit_ok_1): Handle red == NULL.
+
+2019-06-15  Maya Rashish  <coypu@sdf.org>
+
+       * doc/invoke.texi (Spec Files): Update location of the
+       Fortran spec file.
+
+2019-06-15  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/extend.texi (Common Function Attributes): Clarify
+       no_sanitize.  Fix grammar.
+
 2019-06-15  Jan Hubicka  <hubicka@ucw.cz>
 
        * tree-ssa-alias.c (alias_stats): Add