提交 596d60c5 编写于 作者: R Rich Felker

dynamic linker 64bit fix: hash table entries are always 32bit

上级 51e2d831
...@@ -35,7 +35,7 @@ struct dso ...@@ -35,7 +35,7 @@ struct dso
int refcnt; int refcnt;
size_t *dynv; size_t *dynv;
Sym *syms; Sym *syms;
size_t *hashtab; uint32_t *hashtab;
char *strings; char *strings;
unsigned char *base; unsigned char *base;
unsigned char *map; unsigned char *map;
...@@ -71,7 +71,7 @@ static uint32_t hash(const char *s) ...@@ -71,7 +71,7 @@ static uint32_t hash(const char *s)
return h & 0xfffffff; return h & 0xfffffff;
} }
static Sym *lookup(const char *s, uint32_t h, Sym *syms, size_t *hashtab, char *strings) static Sym *lookup(const char *s, uint32_t h, Sym *syms, uint32_t *hashtab, char *strings)
{ {
size_t i; size_t i;
for (i=hashtab[2+h%hashtab[0]]; i; i=hashtab[2+hashtab[0]+i]) { for (i=hashtab[2+h%hashtab[0]]; i; i=hashtab[2+hashtab[0]+i]) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册