> Without looking at the disassembly, I'd guess that MinGW gcc and
> non-optimised MSVC builds restore the stack pointer from a known
> location regardless of the calling convention, which should always work.

Optimized MSVC builds also restore the stack and frame pointers. But
before that it tries to pop local registers saved on the stack. Bingo!

My guess (but I've not compiled un-optimized to test it) is that
non-optimized MSVC builds work because the compiler is reloading
variables and/or being much less aggresive in caching values on
registers.

-- 
                    /L/e/k/t/u


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to