https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101882
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|modulus with input and |[9/10/11/12 Regression] |output set to a hard |modulus with input and |register |output set to a hard | |register CC| |jakub at gcc dot gnu.org Target Milestone|--- |9.5 --- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Started with r9-3950-g2f0b80c7a4ab4254f57ba63de26ebb7896e3742d Does the modsw instruction really need the early-clobber (i.e. does it first overwrite the result register before reading the input registers)? Though, even if it doesn't and this particular issue would be fixed by dropping it, there can be other instructions that really do need the early-clobber. Before the r9-3950 change, gcc would silently reload the input from r20 to some other register to honor the early-clobber. If that is a behavior that is fine for insns other than inline-asm, perhaps the r9-3950 changes should be done only when reloading inline-asm and nothing else?