> Making operand 0 read/write in define_insn_and_split prevents the web pass > from creating a new pseudo > for the clobber, avoiding the whole problem.
That is the right solution. If you clobber a match_dup of an input operand, that makes it and input-and-output operand, so you should mark it as such.