Gives the memory of the stack's whole pages that lie DISCARD_MARGIN bytes or more below frame
back to the system. The pages stay mapped (and the guard untouched); their next use finds zeros on
macOS and Linux and unspecified contents on Windows. frame is an address in the frame of the
running procedure: everything below it must be dead, and the margin is left for the calls that
do this.
stack_discard_below :: (stack: Stack, frame: *void)
Parameters
- stack: Stack
- frame: *void