aboutsummaryrefslogtreecommitdiff
path: root/sys/cmd/cc/sym.c
diff options
context:
space:
mode:
authorNicholas Noll <nbnoll@eml.cc>2020-05-16 10:39:05 -0700
committerNicholas Noll <nbnoll@eml.cc>2020-05-16 10:39:05 -0700
commit6c9563e91eb7aa738aa2656d141ce56ef66b50cf (patch)
tree85fd9a50777ae8f5ec14ca112d26c5f4b9262113 /sys/cmd/cc/sym.c
parent3f7474df0645224ce61fedcd908028f41971189e (diff)
feat: added directory for command line tools
Diffstat (limited to 'sys/cmd/cc/sym.c')
-rw-r--r--sys/cmd/cc/sym.c32
1 files changed, 32 insertions, 0 deletions
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 <libn/macro/map.h>
+
+#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