summaryrefslogtreecommitdiff
path: root/src/iconc/cmem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/iconc/cmem.c')
-rw-r--r--src/iconc/cmem.c114
1 files changed, 0 insertions, 114 deletions
diff --git a/src/iconc/cmem.c b/src/iconc/cmem.c
deleted file mode 100644
index 720a495..0000000
--- a/src/iconc/cmem.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * cmem.c -- memory initialization and allocation for the translator.
- */
-#include "../h/gsupport.h"
-#include "cglobals.h"
-#include "ctrans.h"
-#include "csym.h"
-#include "ctree.h"
-#include "ccode.h"
-#include "cproto.h"
-
-struct centry *chash[CHSize]; /* hash area for constant table */
-struct fentry *fhash[FHSize]; /* hash area for field table */
-struct gentry *ghash[GHSize]; /* hash area for global table */
-
-struct implement *bhash[IHSize]; /* hash area for built-in functions */
-struct implement *khash[IHSize]; /* hash area for keywords */
-struct implement *ohash[IHSize]; /* hash area for operators */
-
-struct implement *spec_op[NumSpecOp]; /* table of ops with special syntax */
-
-char pre[PrfxSz] = {'0', '0', '0'}; /* initial function name prefix */
-
-extern struct str_buf lex_sbuf;
-
-
-/*
- * init - initialize memory for the translator
- */
-
-void init()
-{
- int i;
-
- init_str();
- init_sbuf(&lex_sbuf);
-
- /*
- * Zero out the hash tables.
- */
- for (i = 0; i < CHSize; i++)
- chash[i] = NULL;
- for (i = 0; i < FHSize; i++)
- fhash[i] = NULL;
- for (i = 0; i < GHSize; i++)
- ghash[i] = NULL;
- for (i = 0; i < IHSize; i++) {
- bhash[i] = NULL;
- khash[i] = NULL;
- ohash[i] = NULL;
- }
-
- /*
- * Clear table of operators with non-standard operator syntax.
- */
- for (i = 0; i < NumSpecOp; ++i)
- spec_op[i] = NULL;
- }
-
-/*
- * init_proc - add a new entry on front of procedure list.
- */
-void init_proc(name)
-char *name;
- {
- register struct pentry *p;
- int i;
- struct gentry *sym_ent;
-
- p = NewStruct(pentry);
- p->name = name;
- nxt_pre(p->prefix, pre, PrfxSz);
- p->prefix[PrfxSz] = '\0';
- p->nargs = 0;
- p->args = NULL;
- p->ndynam = 0;
- p->dynams = NULL;
- p->nstatic = 0;
- p->has_coexpr = 0;
- p->statics = NULL;
- p->ret_flag = DoesRet | DoesFail | DoesSusp; /* start out pessimistic */
- p->arg_lst = 0;
- p->lhash =
- (struct lentry **)alloc((unsigned int)((LHSize)*sizeof(struct lentry *)));
- for (i = 0; i < LHSize; i++)
- p->lhash[i] = NULL;
- p->next = proc_lst;
- proc_lst = p;
- sym_ent = instl_p(name, F_Proc);
- sym_ent->val.proc = proc_lst;
- }
-
-/*
- * init_rec - add a new entry on the front of the record list.
- */
-void init_rec(name)
-char *name;
- {
- register struct rentry *r;
- struct gentry *sym_ent;
- static int rec_num = 0;
-
- r = NewStruct(rentry);
- r->name = name;
- nxt_pre(r->prefix, pre, PrfxSz);
- r->prefix[PrfxSz] = '\0';
- r->rec_num = rec_num++;
- r->nfields = 0;
- r->fields = NULL;
- r->next = rec_lst;
- rec_lst = r;
- sym_ent= instl_p(name, F_Record);
- sym_ent->val.rec = r;
- }