https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118945
--- Comment #5 from Jeffrey A. Law <law at gcc dot gnu.org> --- This doesn't seem like an ABI issue (WRT c#2), it's just question of what uarchs prefer from a performance standpoint. With that in mind I'd tend to think that a tune option is the way to go. In general I would expect most designs to prefer tail agnostic rather than tail undisturbed. In fact, I'd be rather surprised to see anything preferring tail undisturbed. So I'd tend to suggest that we steer towards tail agnostic by default.