https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87984

Alexander Monakov <amonakov at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|INVALID                     |---

--- Comment #11 from Alexander Monakov <amonakov at gcc dot gnu.org> ---
No, you're mistaken. The clobber is outside of the live range of 'a'. There's
no clobber where 'a' is live:

        register int a asm("eax");
        a = 1;
        asm("add %1, %0" : "+r"(o) : "r"(a));

Such situation could appear as a result of inlining, for example.

Do you realize that LLVM is implementing sane semantics promised by GCC's own
documentation without inventing new syntax for inline asm operands?

Reply via email to