]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Daily bump.
authorGCC Administrator <gccadmin@gcc.gnu.org>
Sun, 11 Jun 2023 00:21:25 +0000 (00:21 +0000)
committerGCC Administrator <gccadmin@gcc.gnu.org>
Sun, 11 Jun 2023 00:21:25 +0000 (00:21 +0000)
gcc/ChangeLog
gcc/DATESTAMP
gcc/testsuite/ChangeLog

index 9425e94e4299a3d8a353a0d9b6acbde23a472127..cfc286ec0111f9dd9ea439e29185d51f77b4f88b 100644 (file)
@@ -1,3 +1,46 @@
+2023-06-10  Georg-Johann Lay  <avr@gjlay.de>
+
+       PR target/109650
+       PR target/92729
+       Backport from 2023-05-10 master r14-1688.
+       * config/avr/avr-passes.def (avr_pass_ifelse): Insert new pass.
+       * config/avr/avr.cc (avr_pass_ifelse): New RTL pass.
+       (avr_pass_data_ifelse): New pass_data for it.
+       (make_avr_pass_ifelse, avr_redundant_compare, avr_cbranch_cost)
+       (avr_canonicalize_comparison, avr_out_plus_set_ZN)
+       (avr_out_cmp_ext): New functions.
+       (compare_condtition): Make sure REG_CC dies in the branch insn.
+       (avr_rtx_costs_1): Add computation of cbranch costs.
+       (avr_adjust_insn_length) [ADJUST_LEN_ADD_SET_ZN, ADJUST_LEN_CMP_ZEXT]:
+       [ADJUST_LEN_CMP_SEXT]Handle them.
+       (TARGET_CANONICALIZE_COMPARISON): New define.
+       (avr_simplify_comparison_p, compare_diff_p, avr_compare_pattern)
+       (avr_reorg_remove_redundant_compare, avr_reorg): Remove functions.
+       (TARGET_MACHINE_DEPENDENT_REORG): Remove define.
+       * config/avr/avr-protos.h (avr_simplify_comparison_p): Remove proto.
+       (make_avr_pass_ifelse, avr_out_plus_set_ZN, cc_reg_rtx)
+       (avr_out_cmp_zext): New Protos
+       * config/avr/avr.md (branch, difficult_branch): Don't split insns.
+       (*cbranchhi.zero-extend.0", *cbranchhi.zero-extend.1")
+       (*swapped_tst<mode>, *add.for.eqne.<mode>): New insns.
+       (*cbranch<mode>4): Rename to cbranch<mode>4_insn.
+       (define_peephole): Add dead_or_set_regno_p(insn,REG_CC) as needed.
+       (define_deephole2): Add peep2_regno_dead_p(*,REG_CC) as needed.
+       Add new RTL peepholes for decrement-and-branch and *swapped_tst<mode>.
+       Rework signtest-and-branch peepholes for *sbrx_branch<mode>.
+       (adjust_len) [add_set_ZN, cmp_zext]: New.
+       (QIPSI): New mode iterator.
+       (ALLs1, ALLs2, ALLs4, ALLs234): New mode iterators.
+       (gelt): New code iterator.
+       (gelt_eqne): New code attribute.
+       (rvbranch, *rvbranch, difficult_rvbranch, *difficult_rvbranch)
+       (branch_unspec, *negated_tst<mode>, *reversed_tst<mode>)
+       (*cmpqi_sign_extend): Remove insns.
+       (define_c_enum "unspec") [UNSPEC_IDENTITY]: Remove.
+       * config/avr/avr-dimode.md (cbranch<mode>4): Canonicalize comparisons.
+       * config/avr/predicates.md (scratch_or_d_register_operand): New.
+       * config/avr/constraints.md (Yxx): New constraint.
+
 2023-06-09  Andrew Pinski  <apinski@marvell.com>
 
        Backported from master:
index dc88eb6d69e2f9fbfff757b6dfe61ec599018adf..0f040c2846a68f25cfbb8c008725117d27b5c761 100644 (file)
@@ -1 +1 @@
-20230610
+20230611
index aeb5016352676498ec0f2c906ebfdf527a8615c2..ee5197d1ddd9f86b94eebe547806aebfc7f91722 100644 (file)
@@ -1,3 +1,10 @@
+2023-06-10  Georg-Johann Lay  <avr@gjlay.de>
+
+       PR target/109650
+       Backport from 2023-05-10 master r14-1688.
+       * gcc.target/avr/torture/pr109650-1.c: New test.
+       * gcc.target/avr/torture/pr109650-2.c: New test.
+
 2023-06-09  Andrew Pinski  <apinski@marvell.com>
 
        Backported from master: