From 6c9563e91eb7aa738aa2656d141ce56ef66b50cf Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Sat, 16 May 2020 10:39:05 -0700 Subject: feat: added directory for command line tools --- sys/cmd/cc/sym.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 sys/cmd/cc/sym.c (limited to 'sys/cmd/cc/sym.c') diff --git a/sys/cmd/cc/sym.c b/sys/cmd/cc/sym.c new file mode 100644 index 0000000..ef40bce --- /dev/null +++ b/sys/cmd/cc/sym.c @@ -0,0 +1,32 @@ +#include "cc.h" + +#include + +#define PTR_HASH(p) (uintptr)(p) +#define PTR_EQUAL(p1, p2) ((uintptr)(p1) == (uintptr)(p2)) + +#if 0 +struct SymTab +{ + MAP_STRUCT_BODY(string, Sym*); +}; + +Sym* +getsym(SymTab *tab, string key) +{ + MAP_GET(tab, key, PTR_HASH, PTR_EQUAL, nil); +} + +static +int +moresymtab(SymTab *tab, int n) +{ + MAP_GROW(tab, string, Sym*, n, PTR_HASH); +} + +int +putsym(SymTab *tab, Sym *sym, error *err) +{ + MAP_PUT(tab, sym->name, sym, PTR_HASH, PTR_EQUAL, moresymtab, err); +} +#endif -- cgit v1.2.1