https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97141
--- Comment #2 from Alex Coplan <acoplan at gcc dot gnu.org> --- Adding -fno-tree-forwprop gives us an ICE in LRA instead: $ aarch64-elf-gcc -c pr97141.c -O3 -march=armv8.2-a+sve -fno-tree-forwprop during RTL pass: reload pr97141.c: In function 'g': pr97141.c:8:1: internal compiler error: maximum number of generated reload insns per insn achieved (90) 8 | } | ^ 0xc08d23 lra_constraints(bool) /home/alecop01/toolchain/src/gcc/gcc/lra-constraints.c:5061 0xbeff49 lra(_IO_FILE*) /home/alecop01/toolchain/src/gcc/gcc/lra.c:2329 0xba2af8 do_reload /home/alecop01/toolchain/src/gcc/gcc/ira.c:5802 0xba2af8 execute /home/alecop01/toolchain/src/gcc/gcc/ira.c:5988 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. Originally noticed this LRA ICE with the related testcase: int a; void b() { a = 0; for (; a != -24; a = (short)a - 3) { short *c; *c |= 0 < b; } }