mirror of
https://github.com/golang/go
synced 2024-09-30 16:18:35 -06:00
cmd/ld: skip R_*_NONE relocations, fix Linux/386 build again
The last fix was wrong w.r.t C's operator precedence, and it also failed to really skip the NONE relocation. The offending R_386_NONE relocation is a absolute relocation in section .eh_frame. TBR=golang-dev CC=golang-dev https://golang.org/cl/6463058
This commit is contained in:
parent
2701046798
commit
b1532344ef
@ -658,8 +658,11 @@ ldelf(Biobuf *f, char *pkg, int64 len, char *pn)
|
|||||||
p += 4;
|
p += 4;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(info & 0xffffffff == 0) // R_*_NONE relocation
|
if((info & 0xffffffff) == 0) { // skip R_*_NONE relocation
|
||||||
|
j--;
|
||||||
|
n--;
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
if((info >> 32) == 0) { // absolute relocation, don't bother reading the null symbol
|
if((info >> 32) == 0) { // absolute relocation, don't bother reading the null symbol
|
||||||
rp->sym = S;
|
rp->sym = S;
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user