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).