[PowerPC64] correct tprel offset limit
I don't expect anyone will have hit this bug. You'd need a TLS segment of 2G before you'd notice. * elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed range of tp-relative offsets.
This commit is contained in:
parent
d0044bac9e
commit
0b1474281c
|
@ -1,3 +1,8 @@
|
|||
2019-07-18 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elf64-ppc.c (ppc64_elf_tls_optimize): Correct test for allowed
|
||||
range of tp-relative offsets.
|
||||
|
||||
2019-07-15 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elflink.c (_bfd_elf_fix_symbol_flags): If the def for an
|
||||
|
|
|
@ -7734,9 +7734,8 @@ ppc64_elf_tls_optimize (struct bfd_link_info *info)
|
|||
{
|
||||
value += sym_sec->output_offset;
|
||||
value += sym_sec->output_section->vma;
|
||||
value -= htab->elf.tls_sec->vma;
|
||||
ok_tprel = (value + TP_OFFSET + ((bfd_vma) 1 << 31)
|
||||
< (bfd_vma) 1 << 32);
|
||||
value -= htab->elf.tls_sec->vma + TP_OFFSET;
|
||||
ok_tprel = value + 0x80008000ULL < 1ULL << 32;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue