Hi! This one is hand reduced to problematic code from optimized dump that used to be miscompiled during combine starting with r12-303 and fixed with r13-3530 aka PR107172 fix.
2023-01-13 Jakub Jelinek <ja...@redhat.com> PR target/107131 * gcc.c-torture/execute/pr107131.c: New test. --- gcc/testsuite/gcc.c-torture/execute/pr107131.c.jj 2023-01-13 17:29:42.713370475 +0100 +++ gcc/testsuite/gcc.c-torture/execute/pr107131.c 2023-01-13 17:29:33.366503884 +0100 @@ -0,0 +1,18 @@ +/* PR target/107131 */ + +__attribute__((noipa)) unsigned long long +foo (unsigned char o) +{ + unsigned long long t1 = -(long long) (o == 0); + unsigned long long t2 = -(long long) (t1 > 10439075533421201520ULL); + unsigned long long t3 = -(long long) (t1 <= t2); + return t3; +} + +int +main () +{ + if (foo (0) != -1ULL) + __builtin_abort (); + return 0; +} Jakub