Well, you really don't need stack frames.
Stack frames are convenient when you save registers and save local variables on the stack β to simplify writing and debugging: just set ebp to a fixed point on the stack and specify all the stack data using ebp . And it is easier to restore esp at the end.
In addition, debuggers often expect stack frames to be present, otherwise you might get an inaccurate stack call, for example.
So, the answer to 1 is yes, the answer to 2 and 3 above.
source share