pub fn invoke_with_current_registers<F>(f: &mut F) -> Result<(), &'static str>where
    F: FuncWithRegisters,
Expand description

This function saves the current CPU register values onto the stack (to preserve them) and then invokes the given closure with those registers as the argument.

In general, this is useful for jumpstarting the unwinding procedure, since we have to start from the current call frame and work backwards up the call stack while applying the rules for register value changes in each call frame in order to arrive at the proper register values for a prior call frame.