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]

[gold commit] PR 21090: Disallow --incremental with -pie and force -no-pie for incremental tests


This is a partial fix for the gold testsuite failures documented in
PR 21090. The use of -fpie triggers some mov-to-lea optimizations that
are not compatible with incremental linking, so those optimizations need
to be disabled. We also diagnose the attempt to use -pie with incremental
linking, and force -no-pie for the incremental tests in case the build has
been configured to have GCC pass -pie all the time.

We still have a problem where compiling with -fpie results in some GOT
entries even when linking with -no-pie. This combination still causes test
failures because we are not updating the GOT entries in an incremental update
link.

-cary


2017-12-01  Cary Coutant  <ccoutant@gmail.com>

gold/
        PR gold/21090
        * incremental.cc (Sized_relobj_incr::do_relocate): Fix comment.
        * options.cc (General_options::finalize): Disallow -pie with
        incremental linking.
        * x86_64.cc (Target_x86_64::Scan::local): Don't do mov-to-lea
        or callq-to-direct optimizations for incremental links.
        (Target_x86_64::Scan::global): Likewise.
        (Target_x86_64::Relocate::relocate): Likewise.
        * testsuite/Makefile.am (incremental_test): Force -no-pie.
        (incremental_test_2): Likewise.
        (incremental_test_3): Likewise.
        (incremental_test_4): Likewise.
        (incremental_test_5): Likewise.
        (incremental_test_6): Likewise.
        (incremental_copy_test): Likewise.
        (incremental_common_test_1): Likewise.
        (incremental_comdat_test_1):  Likewise.
        * testsuite/Makefile.in: Regenerate.

Attachment: pr21090-a.patch
Description: Binary data


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