This is the mail archive of the mailing list for the binutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [gold][aarch64] PR gold/19163: zero-out ABS64/32/16/ in .rela.dyn.

Oh, forgot to add gold/ChangeLog -

2015-10-26  Han Shen  <>

        PR gold/19163 - zero out ABS64/32/16 in .rela.dyn.

        * (AArch64_relobj::ZeroOutRecord): New data struct.
        (AArch64_relobj::zero_out_list_): New member.
        (AArch64_relobj::ZeroOutIter): New typedef.
        (AArch64_relobj::ZeroOutList): Likewise.
        (AArch64_relobj::zero_out_relocs): New method.
        (AArch64_relobj::do_relocate_sections): Add hook to call
        (AArch64_relocate_functions::zero_out): New helper method.
        (Target_aarch64::Scan::global): Record global symbols that are
        added to .rela.dyn.

On Mon, Oct 26, 2015 at 4:53 PM, Han Shen <> wrote:
> Hi Cary, this is the patch to fix PR gold/19163 (and gold/19169).
> Android bionic dynamic linker has bugs dealing with ABS64/32/16 in the
> .rela.dyn section. It was fixed last week here -
> The problem here is that that L and M release will still have this
> bug. So here is the patch to zero out the relocation values in these
> affected relocs (AARCH64_ABS64/32/16).
> Tested - build O2/O0 on x86_64 machine. build O2 on aarch64 machine.
>               passed gold dev unit test cases.
>               manually checked the value in .rela.dyn, so that ABSxx
> are all zero.
>               manually verified case in PR gold/19169
> Ok for trunk?
> Thanks,
> Han

Han Shen |  Software Engineer | |  +1-650-440-3330

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]