https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119002
Bug ID: 119002 Summary: [15 Regression] Comparison miscompilation on ppc64le and s390x since r15-6777 Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: jakub at gcc dot gnu.org Target Milestone: --- __attribute__((noinline)) unsigned int foo (void *x, float y, float z) { unsigned int a, b; float c, d, e; c = y; d = z; a = c < d; d = y; e = z; b = d >= e; a |= b; return a; } int main () { if (foo ((void *) 0, 0.f, __builtin_nanf (""))) __builtin_abort (); } is miscompiled at -O2 on powerpc64le-linux (and I was told s390x too, but haven't tried myself) since r15-6777-g06c4cf398947b53b4bfc65752f9f879bb2d07924