You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We need C stacks before stack growth will be feasible. We statically know whenever we're calling a C function; this allows us to get away with not having linker support, as the LLVM __morestack stuff requires. There will be one C stack per Rust thread. Calling a C function switches stacks, copies arguments over, calls, and then returns the return vale.
The text was updated successfully, but these errors were encountered:
This is implemented. LLVM code is using it. It seemed to wedge the Mac tinderbox for some reason, although it works on my Mac.
What needs to be done now is to convert all cdecl native calls over to using the C stack and implement a C-stack-switching stdcall ABI for the couple of Windows functions that use it.
This is almost complete. I believe we have 3 functions that yield still using the rust stack. We should sort that out, then get rid of the old "cdecl" ABI and rename the "c-stack-cdecl" to "cdecl" (or just make it the default).
We need C stacks before stack growth will be feasible. We statically know whenever we're calling a C function; this allows us to get away with not having linker support, as the LLVM
__morestack
stuff requires. There will be one C stack per Rust thread. Calling a C function switches stacks, copies arguments over, calls, and then returns the return vale.The text was updated successfully, but these errors were encountered: