rust-lang/rust — pull request #17563 by brson (2014-09-26 16:10:36+00:00)
Title: Use stack probes instead of split stacks for overflow protection on windows

This is the bare minimum to stop using split stacks on Windows, fixing https://github.com/rust-lang/rust/issues/13259, by turning on stack probes for all functions and disabling compiler and runtime support for split stacks on Windows.

It does not restore the out-of-stack error message, which requires more runtime work.

This includes a test that the Windows TCB is no longer being clobbered, but the out-of-stack test itself is pretty weak, only testing that the program exits abnormally, not that it isn't writing to bogus memory, so I haven't truly verified that this is providing the safety we claim.

A more complete solution is in https://github.com/rust-lang/rust/pull/16388, which has some unresolved issues yet.

cc @Zoxc @klutzy @vadimcn