So, I was wondering about patterns like: (define_insn_and_split "*setcc_di_1" [(set (match_operand:DI 0 "register_operand" "=q") (match_operator:DI 1 "ix86_comparison_operator" [(reg FLAGS_REG) (const_int 0)]))] "TARGET_64BIT && !TARGET_PARTIAL_REG_STALL" "#" "&& reload_completed" [(set (match_dup 2) (match_dup 1)) (set (match_dup 0) (zero_extend:DI (match_dup 2)))] { PUT_MODE (operands[1], QImode); operands[2] = gen_lowpart (QImode, operands[0]); })
on the x86. X86 is an always LRA port, and with LRA it seems reload_completed is always 0, and so that disables these splitters? I have a port that I am converting, and noticed this and am wondering what the path forward is for me.