https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109484
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |INVALID Status|UNCONFIRMED |RESOLVED CC| |jakub at gcc dot gnu.org --- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Similar bug. The basic GCC expectations for inline-asm is that the whole assembly template after substitutions (which is for GCC mostly intentionally a black box) works as a single instruction which reads all its inputs (and that obviously doesn't mean just the input themselves, but also any other register/memory used in the input) and then stores all its outputs. Early clobbers are the way to tell the compiler that it is not the case and some output is written before all the inputs are used.