https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113796
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target|riscv aarch64 | Summary|[14 Regression] RISC-V |[14 Regression] ifcvt does |rv64gcv vector: Runtime |not remove range info |mismatch at -O2 |before folding: Runtime | |mismatch at -O2 --- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Here is one that fails on x86_64 too: ``` signed char a[] = {0x80, 0x80,0x80,0x80}; int b; signed char c; int main() { for (; b < sizeof(a); b += 1) c = a[b] < 0 ?: a[b] >> 6; if (c == 1) return 0; else return 1; } ``` Compile with `-O2 -fno-vect-cost-model` to see the issue.