mirror of
https://github.com/golang/go
synced 2024-10-01 03:28:32 -06:00
cmd/5l: reduce the size of Prog and Sym
Prog * Remove the unused Prog* dlink * note that align is also unused, but removing it does not help due to alignment issues. Saves 4 bytes, sizeof(Prog): 84 => 80. Sym * Align {u,}char fields on word boundaries Saves 4 bytes, sizeof(Sym): 136 => 132. Tested on linux/arm and freebsd/arm. R=minux.ma, remyoudompheng, rsc CC=golang-dev https://golang.org/cl/7106050
This commit is contained in:
parent
42c86828b1
commit
9b568ef2b8
@ -108,7 +108,6 @@ struct Prog
|
||||
} u0;
|
||||
Prog* cond;
|
||||
Prog* link;
|
||||
Prog* dlink;
|
||||
int32 pc;
|
||||
int32 line;
|
||||
int32 spadj;
|
||||
@ -117,7 +116,7 @@ struct Prog
|
||||
uchar as;
|
||||
uchar scond;
|
||||
uchar reg;
|
||||
uchar align;
|
||||
uchar align; // unused
|
||||
};
|
||||
|
||||
#define regused u0.u0regused
|
||||
@ -136,8 +135,6 @@ struct Sym
|
||||
uchar reachable;
|
||||
uchar dynexport;
|
||||
uchar leaf;
|
||||
uchar stkcheck;
|
||||
uchar hide;
|
||||
int32 dynid;
|
||||
int32 plt;
|
||||
int32 got;
|
||||
@ -148,6 +145,8 @@ struct Sym
|
||||
int32 elfsym;
|
||||
uchar special;
|
||||
uchar fnptr; // used as fn ptr
|
||||
uchar stkcheck;
|
||||
uchar hide;
|
||||
Sym* hash; // in hash table
|
||||
Sym* allsym; // in all symbol list
|
||||
Sym* next; // in text or data list
|
||||
|
Loading…
Reference in New Issue
Block a user