#include "ws.h" #include "fn.h" #include "prv.h" #include "parse.h" #include "storage.h" static int wspush(const struct stentry *e, struct cgen *c) { const struct type *t = e->t; printf("%%%s_ =l alloc%zu %zu\n", e->tk->s, t->align, t->sz); return 0; } int ws_cgen(const struct storage *s, struct cgen *c) { for (size_t i = 0; i < s->nentries; i++) if (wspush(&s->entries[i], c)) return -1; return 0; } int ws(const struct lex *l, struct prv *p) { struct fn *fn = fn_cur(p); return storage(l, p, "storage section", 1, &fn->ws); }