commit:     e54a7fbca63053b5753fd9ba543c27ef392d3084
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 19 00:01:46 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 19 00:01:46 2024 +0000
URL:        https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=e54a7fbc

14.0.0: arm: fix inconsistency between atomic patterns and expected attributes

Apply workaround patch from Andrew Pinski at 
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113915#c9.

Bug: https://gcc.gnu.org/PR113915
Bug: https://bugs.gentoo.org/924237
Signed-off-by: Sam James <sam <AT> gentoo.org>

 14.0.0/gentoo/75_all_arm_PR113915-atomics.patch | 36 +++++++++++++++++++++++++
 14.0.0/gentoo/README.history                    |  5 ++++
 2 files changed, 41 insertions(+)

diff --git a/14.0.0/gentoo/75_all_arm_PR113915-atomics.patch 
b/14.0.0/gentoo/75_all_arm_PR113915-atomics.patch
new file mode 100644
index 0000000..82fa84a
--- /dev/null
+++ b/14.0.0/gentoo/75_all_arm_PR113915-atomics.patch
@@ -0,0 +1,36 @@
+From 9b1d9f15e7ecfd7d27a2bb878efb6577741eecaa Mon Sep 17 00:00:00 2001
+From: Sam James <[email protected]>
+Date: Sun, 18 Feb 2024 22:58:51 +0000
+Subject: [PATCH] arm: fix inconsistency between atomic patterns and expected
+ attributes
+
+Apply workaround patch from Andrew Pinski at 
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113915#c9.
+
+Bug: https://gcc.gnu.org/PR113915
+Bug: https://bugs.gentoo.org/924237
+---
+ gcc/config/arm/arm.cc | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/config/arm/arm.cc b/gcc/config/arm/arm.cc
+index 1cd69268ee98..9f0d2405b905 100644
+--- a/gcc/config/arm/arm.cc
++++ b/gcc/config/arm/arm.cc
+@@ -25614,11 +25614,12 @@ arm_final_prescan_insn (rtx_insn *insn)
+ 
+           case INSN:
+             /* Instructions using or affecting the condition codes make it
+-               fail.  */
++               fail or ones which cannot be predicable.  */
+             scanbody = PATTERN (this_insn);
+             if (!(GET_CODE (scanbody) == SET
+                   || GET_CODE (scanbody) == PARALLEL)
+-                || get_attr_conds (this_insn) != CONDS_NOCOND)
++                || get_attr_conds (this_insn) != CONDS_NOCOND
++                || get_attr_predicable (this_insn) != PREDICABLE_YES)
+               fail = TRUE;
+             break;
+ 
+-- 
+2.43.2
+

diff --git a/14.0.0/gentoo/README.history b/14.0.0/gentoo/README.history
index 8cfb3c2..dd7c933 100644
--- a/14.0.0/gentoo/README.history
+++ b/14.0.0/gentoo/README.history
@@ -1,3 +1,8 @@
+23     19 Feb 2024
+
+       - 75_all_PR113734_middle_end_update_vector_loop_bounds.patch
+       + 75_all_arm_PR113915-atomics.patch
+
 22     13 Feb 2024
 
        + 75_all_PR113734_middle_end_update_vector_loop_bounds.patch

Reply via email to