summaryrefslogtreecommitdiff
path: root/src/cmd/gc/go.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/gc/go.h')
-rw-r--r--src/cmd/gc/go.h33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/cmd/gc/go.h b/src/cmd/gc/go.h
index c09bc978d..0a6f1ccbb 100644
--- a/src/cmd/gc/go.h
+++ b/src/cmd/gc/go.h
@@ -452,6 +452,29 @@ struct Typedef
extern Typedef typedefs[];
+typedef struct Sig Sig;
+struct Sig
+{
+ char* name;
+ Sym* sym;
+ uint32 hash;
+ int32 perm;
+ int32 offset;
+ Sig* link;
+};
+
+typedef struct Pool Pool;
+struct Pool
+{
+ String* sval;
+ Pool* link;
+};
+
+EXTERN Pool* poolist;
+EXTERN Pool* poolast;
+EXTERN Sym* symstringo; // string objects
+EXTERN int32 stringo; // size of string objects
+
typedef struct Io Io;
struct Io
{
@@ -712,6 +735,7 @@ uint32 typehash(Type*, int, int);
void frame(int);
Node* dobad(void);
Node* nodintconst(int64);
+void nodconst(Node*, Type*, int64);
Node* nodnil(void);
Node* nodbool(int);
void ullmancalc(Node*);
@@ -740,6 +764,14 @@ Type* structnext(Iter*);
Type* funcfirst(Iter*, Type*);
Type* funcnext(Iter*);
+int brcom(int);
+int brrev(int);
+void setmaxarg(Type*);
+Sig* lsort(Sig*, int(*)(Sig*, Sig*));
+int dotoffset(Node*, int*, Node**);
+void stringpool(Node*);
+void tempname(Node*, Type*);
+
int Econv(Fmt*);
int Jconv(Fmt*);
int Lconv(Fmt*);
@@ -917,7 +949,6 @@ void dumpobj(void);
void dowidth(Type*);
void argspace(int32);
Node* nodarg(Type*, int);
-void nodconst(Node*, Type*, vlong);
Type* deep(Type*);
Type* shallow(Type*);