delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mail set sender to djgpp-workers-bounces using -f |
X-Recipient: | djgpp-workers AT delorie DOT com |
Message-ID: | <5910F06D.9060704@gmx.de> |
Date: | Tue, 09 May 2017 00:25:49 +0200 |
From: | "Juan Manuel Guerrero (juan DOT guerrero AT gmx DOT de) [via djgpp-workers AT delorie DOT com]" <djgpp-workers AT delorie DOT com> |
User-Agent: | Mozilla/5.0 (X11; U; Linux x86_64; de; rv:1.9.2.13) Gecko/20101206 SUSE/3.1.7 Thunderbird/3.1.7 |
MIME-Version: | 1.0 |
To: | djgpp-workers AT delorie DOT com |
Subject: | Differences between i386go32.sc from the DJGPP port and the one provided |
by the official binutils and question about the status of lto support for | |
DJGPP. | |
X-Provags-ID: | V03:K0:0JQ2BDOtBa8LEeuI36Nwe9VULQ9Nd0+71yV0VPndK09K9HSmzpR |
wHySyMz5tvVkKfv5WaEx/5vBzFqk0mUU6Ydyg5jtaipOn8AHEBX9aV224XjhmjbxFarvNi6 | |
Ow8T2ElUCnI3NemwS4kmS4II3J3NLqinyynkNTdLIfL7zSwr+K5zAbBE/VfCXgQ1YiPTRH+ | |
ezhMbmhPIPUroRSUNKVQg== | |
X-UI-Out-Filterresults: | notjunk:1;V01:K0:D0dXVJSyxLg=:fKEQaZnpd3oZkL4QXD84Yr |
EBxf0/3BeOUwRzdEi4lczuBy7U8Ovf7gBicfwN08o+bez1qGXzyokR4kYnxQr+j+lf8PzBenH | |
KAqhS5F3RgM/qoAjrlECZCf7+B9jcF1uBHHWP8fAzYMncUkJ++VRxbUAjiGjYi8v0ND096Att | |
5kLl30DoCs8leoCQ1zKZK4B3eFdcNGNIM2KZ5hNOkO7WpK5cijdFuCswpuZ/9wqwi5yIOqo5m | |
xQvBCpxhyXDd/Sntapu5AtWvKvGF68NxWznl0tIudtUykVBBUv5oVX4G2Jzue8xSa6W3ywf2d | |
PzStsN4bfNPUi9l7gpJIfSqBDfJnh0bc6yW+33iFVgQK1LqlzT94JHXB41PorUXhecO6yJeYF | |
XOs/snB/iT+nsh+Lz8cKs8nluC5121jhh7/omQmKfKB1rBoVHCqrSyBs4K/WNmHe4M1QF7Dqy | |
2tSnERRGEbFXpfN0d/BLgspwkeefgom+wn1XIcKCxTe1+ckYHyWQKkAEZYNiNXvXYquwZujzd | |
5QItEkcEH3aqhYw7co5h0OC2VhocvflZkb/TnRaH3XvFG3nmTtWRyI+TNx4dkjdzLpXTHWP+g | |
+rihb7uedbhJ/SY1J1/lJX0MiGuAyFvPPSa6sYR1AAnWB4fIiAWsNiRmR9n9XJE0B3btuIISJ | |
nFERg8XB7AItz/Pe0+J+yAxYIyUk4tVH5dBgBLDSTAeFlhVwaMHA9lbBSh25aNSZiYQKRNwaN | |
jq+X7hsb9Cr2/knZGWiAT2ENYbRZH/6Piw64l6EVULXPriQv3YgjJbdXoS8c/onyWI0DCBAJt | |
YfnkEWI | |
Reply-To: | djgpp-workers AT delorie DOT com |
The patch below shows what currently is added/changed to the "official" linker script. The question is: what of this is required and should be submitted to the binutils maintainers? What is the status/plans for the lto support for DJGPP? Probably the _environ related entries should be submitted. I will not submit anything to the maintainers. May be DJ and/or Andris can decide what of these changes should be become part of the next official binutils release. I do not know if there is still some one with write access to the binutils repository but I do not want to ask the binutils maintainers for inclusion of DJGPP specific changes. Some one else shall do this. This issue is related to: <http://www.delorie.com/archives/browse.cgi?p=djgpp/2017/05/06/17:45:12> Please let me know if something is missing or required. Regards, Juan M. Guerrero diff -aprNU5 binutils-2.28.orig/ld/scripttempl/i386go32.sc binutils-2.28/ld/scripttempl/i386go32.sc --- binutils-2.28.orig/ld/scripttempl/i386go32.sc 2017-03-02 08:23:50 +0000 +++ binutils-2.28/ld/scripttempl/i386go32.sc 2017-03-07 21:51:46 +0000 @@ -45,18 +45,27 @@ SECTIONS } .data ${RELOCATING+ ${DATA_ALIGNMENT}} : { ${RELOCATING+djgpp_first_ctor = . ; *(SORT(.ctors.*)) *(.ctor) + *(.ctors) djgpp_last_ctor = . ;} ${RELOCATING+djgpp_first_dtor = . ; *(SORT(.dtors.*)) *(.dtor) + *(.dtors) djgpp_last_dtor = . ;} + __environ = . ; + PROVIDE(_environ = .) ; + LONG(0) ; *(.data) ${RELOCATING+*(.data.*)} + /* Ugly workaround to prevent entire .bss to have attribute CONTENT */ + /* for C++ executables. */ + *(.bss.*) + ${RELOCATING+*(.gcc_exc*)} ${RELOCATING+___EH_FRAME_BEGIN__ = . ;} ${RELOCATING+*(.eh_fram*)} ${RELOCATING+___EH_FRAME_END__ = . ;} ${RELOCATING+LONG(0);} @@ -67,15 +76,17 @@ SECTIONS } ${CONSTRUCTING+${RELOCATING-$CTOR}} ${CONSTRUCTING+${RELOCATING-$DTOR}} .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : { - *(.bss${RELOCATING+ .bss.* .gnu.linkonce.b.*}) + *(.bss${RELOCATING+ .gnu.linkonce.b.*}) *(COMMON) ${RELOCATING+ end = . ; PROVIDE(_end = .) ;} ${RELOCATING+ . = ALIGN(${SEGMENT_SIZE});} } + /* Discard LTO sections. */ + /DISCARD/ : { *(gnu.lto_*) } /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } EOF
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |