This is the mail archive of the binutils@sourceware.org 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] |
[patch now attached...] On Sat, Feb 6, 2016 at 2:49 PM, Cary Coutant <ccoutant@gmail.com> wrote: > One of the problems in PR 19567 is that x32 is really using 64-bit > addressing, while pretending to be 32-bit. Even though the object file > format is 32-bit, we need to do the overflow checking with 64-bit > arithmetic (because that's what the hardware will be using). > > This patch overrides the pcrela32_check functions in reloc.h with > target-specific versions that do 64-bit checking. > > I've also updated the test case to use -Tdata instead of adding a huge > .space directive, to reduce the size of the .o files. > > -cary > > > 2016-02-06 Cary Coutant <ccoutant@gmail.com> > > gold/ > PR gold/19567 > * reloc.h (Relocate_functions::Overflow_check): Add comments. > * x86_64.cc (X86_64_relocate_functions): New class. > (Target_x86_64::Relocate::relocate): Use the new class. > * testsuite/Makefile.am (x86_64_overflow_pc32): Add -Tdata option. > (x32_overflow_pc32): New test case. > * testsuite/Makefile.in: Regenerate. > * testsuite/x32_overflow_pc32.sh: New script. > * testsuite/x86_64_overflow_pc32.s: Remove .space directive.
Attachment:
pr19567-1.patch
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |