summaryrefslogtreecommitdiff
path: root/cgen.h
blob: f1c42b8af8b568e347b2a9ed3f4763d3d7acfa5c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef CGEN_H
#define CGEN_H

#include "parse.h"
#include "storage.h"

struct cgen
{
    const struct fn *fn;
};

int cgen(const struct ast *ast, struct cgen *c);
int cgen_param(const struct fn *fn, const struct stentry *e);
int cgen_global(const struct fn *fn, const struct stentry *e);
const char *cgen_sz(const size_t sz);
const char *cgen_type(const struct type *t);
const char *cgen_abity(const struct type *t);
const char *cgen_load(const struct type *t);
void cgen_free(struct cgen *c);

#endif