still not sure about how to make a proper stack frame, but study code
added to assist. Apparently GCC subtracts enough stack space for all
function params and uses relative ESP references. Perhaps GDB and
friends assume that? But then how do they locate the start of the
function? Studying this may be key to getting the dynamic core to
generate the proper stack frame for C++ exceptions and GDB stack traces
to work properly.