hex/pointers/stack.fjΒΆ
βββ- Stack
MacrosΒΆ
hexΒΆ
hex.sp_incβLike: sp++hex.sp_decβLike: sp--hex.sp_addβLike: sp += valuehex.sp_subβLike: sp -= valuehex.push_ret_addressβ Note: the pushed returned address must be popd out afterwards with pop_ret_address.hex.pop_ret_addressβ return_address is afj-opaddress, so we assume isdw-aligned.hex.push_hexβLike: stack[++sp] = hexhex.push_byteβ byte is ahex[:2].hex.pushβ M is (n+1)/2, which is because the function pushes the entire parameter as bytes.hex.pop_hexβ hex is only an output parameter.hex.pop_byteβ byte ishex[:2], and itβs only an output parameter.hex.popβ M is (n+1)/2, which is because the function pops all the parameters as bytes.