#include "am.h" #include #include void am_init(am_t *am) { memset(am, 0, sizeof(am_t)); am->sp = am->stack + AM_STACK_SIZE - 1; } void am_push(am_t *am) { assert(am->sp >= am->stack); *am->sp-- = am->expr; } void am_pop(am_t *am) { assert(am->sp < am->stack + AM_STACK_SIZE - 1); am->expr = *++am->sp; }