diff options
author | Alan Modra <amodra@gmail.com> | 2019-11-21 17:22:41 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2019-11-21 19:09:18 +1030 |
commit | 5b537ffc55757b05ca2d7dbd1bbe2d59d88c24a4 (patch) | |
tree | 19fff230f4870272fd18eff9eb9f571cefe86734 /ld/scripttempl/pep.sc | |
parent | b13e475ed21ee0b57c5ce0f3cf8489a4164734e7 (diff) | |
download | gdb-5b537ffc55757b05ca2d7dbd1bbe2d59d88c24a4.zip gdb-5b537ffc55757b05ca2d7dbd1bbe2d59d88c24a4.tar.gz gdb-5b537ffc55757b05ca2d7dbd1bbe2d59d88c24a4.tar.bz2 |
PR46, cygwin: FAIL: cdtest with -Ur
See the comment in pe.sc to understand why ld -Ur won't work.
PR 46
binutils/
* testsuite/lib/binutils-common.exp (is_pecoff_format): Rewrite
with positive logic and add more target triples.
ld/
* scripttempl/pe.sc: Comment on ld -Ur fail. Wrap .gcc_exc comment.
* scripttempl/pep.sc: Likewise.
* testsuite/ld-cdtest/cdtest.exp (test2): xfail for pe.
Diffstat (limited to 'ld/scripttempl/pep.sc')
-rw-r--r-- | ld/scripttempl/pep.sc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ld/scripttempl/pep.sc b/ld/scripttempl/pep.sc index e6d594c..950f578 100644 --- a/ld/scripttempl/pep.sc +++ b/ld/scripttempl/pep.sc @@ -105,6 +105,7 @@ SECTIONS expectation that they will be overridden by the definitions here. If we PROVIDE the symbols then they will not be overridden and global constructors will not be run. + See PR 22762 for more details. This does mean that it is not possible for a user to define their own __CTOR_LIST__ and __DTOR_LIST__ symbols; if they do, @@ -114,7 +115,9 @@ SECTIONS (The custom script can just be a copy of this script with the PROVIDE() qualifiers added). - See PR 22762 for more details. */ + In particular this means that ld -Ur does not work, because + the proper __CTOR_LIST__ set by ld -Ur is overridden by a + bogus __CTOR_LIST__ set by the final link. See PR 46. */ ___CTOR_LIST__ = .; __CTOR_LIST__ = .; LONG (-1); LONG (-1); @@ -135,7 +138,7 @@ SECTIONS LONG (0); LONG (0); } ${RELOCATING+KEEP (*(SORT_NONE(.fini)))} - /* ??? Why is .gcc_exc here? */ + ${RELOCATING+/* ??? Why is .gcc_exc here? */} ${RELOCATING+ *(.gcc_exc)} ${RELOCATING+PROVIDE (etext = .);} ${RELOCATING+ KEEP (*(.gcc_except_table))} |