forked from OSchip/llvm-project
parent
e880a06559
commit
7dd20563a2
|
@ -528,6 +528,10 @@ void X86TargetInfo::relocateOne(uint8_t *Loc, uint32_t Type,
|
||||||
uint64_t Val) const {
|
uint64_t Val) const {
|
||||||
switch (Type) {
|
switch (Type) {
|
||||||
case R_386_32:
|
case R_386_32:
|
||||||
|
case R_386_PC32:
|
||||||
|
case R_386_PLT32:
|
||||||
|
case R_386_TLS_IE:
|
||||||
|
case R_386_TLS_LDO_32:
|
||||||
write32le(Loc, Val);
|
write32le(Loc, Val);
|
||||||
break;
|
break;
|
||||||
case R_386_GOTOFF:
|
case R_386_GOTOFF:
|
||||||
|
@ -536,10 +540,6 @@ void X86TargetInfo::relocateOne(uint8_t *Loc, uint32_t Type,
|
||||||
case R_386_GOTPC:
|
case R_386_GOTPC:
|
||||||
write32le(Loc, Val + Out<ELF32LE>::Got->getVA());
|
write32le(Loc, Val + Out<ELF32LE>::Got->getVA());
|
||||||
break;
|
break;
|
||||||
case R_386_PC32:
|
|
||||||
case R_386_PLT32:
|
|
||||||
write32le(Loc, Val);
|
|
||||||
break;
|
|
||||||
case R_386_GOT32:
|
case R_386_GOT32:
|
||||||
case R_386_TLS_GD:
|
case R_386_TLS_GD:
|
||||||
case R_386_TLS_LDM: {
|
case R_386_TLS_LDM: {
|
||||||
|
@ -549,10 +549,6 @@ void X86TargetInfo::relocateOne(uint8_t *Loc, uint32_t Type,
|
||||||
write32le(Loc, V);
|
write32le(Loc, V);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case R_386_TLS_IE:
|
|
||||||
case R_386_TLS_LDO_32:
|
|
||||||
write32le(Loc, Val);
|
|
||||||
break;
|
|
||||||
case R_386_TLS_LE:
|
case R_386_TLS_LE:
|
||||||
write32le(Loc, Val - Out<ELF32LE>::TlsPhdr->p_memsz);
|
write32le(Loc, Val - Out<ELF32LE>::TlsPhdr->p_memsz);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue