https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119133
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2025-03-06 Status|UNCONFIRMED |NEW Summary|[14/15 Regression] ICE: |[14/15 Regression] ICE: |SIGSEGV in mark_label_nuses |SIGSEGV in mark_label_nuses |(emit-rtl.cc:3896) with -O |(emit-rtl.cc:3896) with -O |-fno-tree-ter and _Float16 |-fno-tree-ter and _Float16 | |since r14-1131 Ever confirmed|0 |1 See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=109632 Target Milestone|--- |14.3 CC| |rsandifo at gcc dot gnu.org --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- This is the split: ``` (define_insn_and_split "*aarch64_bfi<GPI:mode><ALLX:mode>_<SUBDI_BITS>" [(set (zero_extract:GPI (match_operand:GPI 0 "register_operand" "+r,w,?w") (const_int SUBDI_BITS) (match_operand 1 "const_int_operand")) (zero_extend:GPI (match_operand:ALLX 2 "register_operand" "r,w,r")))] "<SUBDI_BITS> <= <ALLX:sizen> && multiple_p (UINTVAL (operands[1]), <SUBDI_BITS>) && UINTVAL (operands[1]) + <SUBDI_BITS> <= <GPI:sizen>" "#" "&& 1" [(set (zero_extract:GPI (match_dup 0) (const_int SUBDI_BITS) (match_dup 1)) (match_dup 2))] { operands[2] = lowpart_subreg (<GPI:MODE>mode, operands[2], <ALLX:MODE>mode); } [(set_attr "type" "bfm,neon_ins_q,neon_ins_q") (set_attr "arch" "*,simd,simd")] ) ``` Which was added with r14-1131-gb096a6ebe9d9f9 . The problem is again lowpart_subreg, this time with: (subreg:HI (reg:HF 106 [ fD.4486 ]) 0)