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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |missed-optimization

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
The tail recursion optimization doesn't support non-register argument passing.

Of course the example is also broken as Andrew says.

A "better" example might be taking the address with like

  asm ("":: "g" (&u64arg));

Better make it meaningfully do sth with no invisible side-effects or escaping
of the address.

We should be pretty good these days with not setting TREE_ADDRESSABLE
unnecessarily (but I guess DECL_NOT_GIMPLE_REG should also inhibit
tail-recursion).

Reply via email to