diff options
author | Russ Cox <rsc@golang.org> | 2009-03-30 17:52:21 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2009-03-30 17:52:21 -0700 |
commit | 12af18c738416024b4c6551247d78ff0812a5a54 (patch) | |
tree | 87c7420b65ec6e649d0504bff9c753aba990c382 /src/cmd/gc/go.h | |
parent | 5de998c5b3e50b17d471a11a846cf0396c2b47a3 (diff) | |
download | golang-12af18c738416024b4c6551247d78ff0812a5a54.tar.gz |
move some portable pieces of 6g/gsubr.c into gc/subr.c
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*);
R=ken
OCL=26922
CL=26922
Diffstat (limited to 'src/cmd/gc/go.h')
-rw-r--r-- | src/cmd/gc/go.h | 33 |
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*); |