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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Redundant argument set up   |Redundant argument set up
                   |for tail call               |for call
          Component|tree-optimization           |target

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Hmm, looks like this works for aarch64, arm, power.


Also it does nothing to do with tail calls.
Even:
```
void bar0 (int);
void bar1 (int);
void g();

void
foo (int i)
{
  switch (i)
    {
    case 0: bar0 (i); break;
    case 1: bar1 (i); break;
    }
   g();
}
```

Fails to work on x86_64 but works on aarch64 and other targets.

Reply via email to