Internals - BBpezsgo/Interpreter GitHub Wiki

Stack Layout

Here you can see the stack layout.

  • BASE is always the same
  • TOP is where the top level statements works
  • CALL is what pushed onto the stack when calling a function
  • FUNC. where the function statements works

The blue arrows shows where the base pointer points to in the TOP or in the FUNC. frame.

The orange numbers shows the values of each pointer stack elements, and the arrows shows where they points to.

The stack can start at any address, and can grow in any direction depending on the runtime. The white numbers are relative to the stack start address.