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

            Bug ID: 110422
           Summary: asm goto vs SRA
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: pinskia at gcc dot gnu.org
  Target Milestone: ---

Testcase from originally from PR 103979:

```
struct S { char a[64]; };

int
foo (void)
{
  struct S s, t;
  asm goto ("" : "=g" (s) : : : l);
  t = s;
  asm goto ("" : "=g" (s) : : : l);
  return s.a[0] + t.a[63];
l:
  return -1;
}
```

This is not related to asm goto not being volatile but rather SRA (just like
complex lowering, PR 105165) does not know how to handle `asm goto` with
outputs.

Reply via email to