On 8/7/25 23:35, Karl Meakin wrote:
I have updated the tests in `cmpbr.c` to reflect the fixes. There are a
few regressions, but they can be fixed later; let's just make GCC
crash-free first.


I should have replied sooner.  The patch set breaks atomics.
I am re-working it not to do so and will re-post soon.


diff --git a/gcc/testsuite/gcc.target/aarch64/cmpbr.c 
b/gcc/testsuite/gcc.target/aarch64/cmpbr.c
index 34630f9a2bf..95393b83fc8 100644
--- a/gcc/testsuite/gcc.target/aarch64/cmpbr.c
+++ b/gcc/testsuite/gcc.target/aarch64/cmpbr.c
@@ -169,33 +169,41 @@ FAR_BRANCH(u64, 42);
/*
  ** i8_x0_slt_x1:
-**     (?:cbbgt        w1, w0|cbblt    w0, w1), .L([0-9]+)
+**     sxtb    (w[0-9]+), w1
+**     cmp     \1, w0, sxtb
+**     bgt     .L([0-9]+)
  **    b       not_taken
-** .L\1:
+** .L\2:
  **    b       taken
  */

Most of these were easy to fix. Wrong rtx costing prevented combine from putting the patterns together.


r~

Reply via email to