Hello Segher all, Thank you very much !. You disallow m->m in the insn condition, like "gpc_reg_operand (operands[0], SImode) || gpc_reg_operand (operands[1], SImode)" This is the part I missed !. So, I will update next week, means ONE movsi_internal, and add a condition, like you suggest, to avoid 'combine' of doing an illegal combination. Best Regards, Henri.