stack switching?

Are there any plans to add stack switching to LLVM? I’ve seen a few proposals for it floating around (some even implemented): (implemented in:

But I couldn’t find any discussion of whether there was a plan to integrate one of these.

Any plans to add this feature?


I hadn't seen any proposals by the people you're linking to, it seems
like an interesting idea, but we'd need the patches submitted etc.
Perhaps get in touch with the authors and ask them about it?


I would absolutely love to have this for a compiler I’m working on. I don’t know that I have the time to try to hack up a patch, but +1 for this feature, and I’d love to pitch in as possible.


Stack switching is usually a runtime library thing. I think everyone who needed this (Go, Rust) emitted calls where appropriate and that was enough.

The first linked proposal claims that their compiler-based implementation has performance advantages over a runtime approach, but it’s not clear to me that the complexity is worth it. The implementation on github hasn’t been touched in 2 years, either.