|
@@ -694,7 +694,11 @@ impl Linker {
|
|
set_u64(tm as u64);
|
|
set_u64(tm as u64);
|
|
}
|
|
}
|
|
reloc::R_X86_64_DTPOFF64 => {
|
|
reloc::R_X86_64_DTPOFF64 => {
|
|
- set_u64((s - b) as u64);
|
|
|
|
|
|
+ if s != 0 {
|
|
|
|
+ set_u64((s - b) as u64);
|
|
|
|
+ } else {
|
|
|
|
+ set_u64(s as u64);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
reloc::R_X86_64_GLOB_DAT | reloc::R_X86_64_JUMP_SLOT => {
|
|
reloc::R_X86_64_GLOB_DAT | reloc::R_X86_64_JUMP_SLOT => {
|
|
set_u64(s as u64);
|
|
set_u64(s as u64);
|