It's great to see progress in this area! I know that this has been a
tricky topic in the past, and it would be awesome to get things sorted
out.

One thing I would keep in mind is that pretty much any strategy
(except the no safety one) involves changes in LLVM. I think we all
hope to one day use "clean upstream LLVM" as opposed to maintaining
our own fork. This sounds like it's functionality which would
certainly be desirable from LLVM's point of view, but it may be worth
checking up with them occasionally to ensure so. Recently they're not
big fans of the idea of a "no-split-stack" attribute, which I thought
was a given.

Another thing to consider is that in a runtime-constrained context,
you're probably not going to want to use the default implementation of
the "stack safety mechanism" in place. Right now this means that you
probably don't want libmorestack.a and it's __morestack strategy. This
also means that any implementor of a stack-safety strategy needs to be
aware of the ABI of stack management. Currently this means that
maintainers of a __morestack strategy need to be aware of where the
TLS slot is on all platforms, and this doesn't necessarily map well to
something like a kernel module. All this really means though is that
it probably needs to be configurable from LLVM's point of view (hard),
or it should be documented if we expect implementations of __morestack
other than our own.

It's awesome to see work in this area, and I can't wait for the pull request!


On Mon, Oct 21, 2013 at 7:30 AM, Corey Richardson <co...@octayn.net> wrote:
> I've written a blog post about stack safety and a proposal for how I
> think it should be implemented in Rust:
> http://cmr.github.io/blog/2013/10/21/on-stack-safety/
>
> Thoughts, comments? I'm going to implement this after my (ill-kept)
> hiatus if there's consensus that this is a good idea.
> _______________________________________________
> Rust-dev mailing list
> Rust-dev@mozilla.org
> https://mail.mozilla.org/listinfo/rust-dev
_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to