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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |aoliva at gcc dot gnu.org

--- Comment #6 from Alexandre Oliva <aoliva at gcc dot gnu.org> ---
FWIW, with or without optimization, this testcase allocates inout f and in &w
to the same register in the .reload dump.  If the asm code used %0, expecting
it to be initially 0 as it should, it would fail:

int main (void) {
  int f = 0, w, z;

  asm volatile(
    "movl\t%0, %1"
    : "+m&l"(f), "=g" (z)
    : "0a"(&w)
  );

  if (z)
    __builtin_abort ();

  return 0;
}

Reply via email to