|
From: | Christian Franke |
Subject: | Re: NEED_REGISTER_FRAME_INFO can be replaced by -static-libgcc |
Date: | Mon, 19 Apr 2010 17:13:10 +0200 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.9) Gecko/20100317 SeaMonkey/2.0.4 |
Vladimir 'φ-coder/phcoder' Serbinenko wrote:
Christian Franke wrote:According to 'gcc -dumpspecs' of Cygwin gcc 4.3.4-3, options '-u ___[de]register_frame_info' are always passed to the linker if -static-libgcc is not specified. This is Cygwin and MinGW specific: In the exe startup code these symbols are loaded only if present, so the DLL must be forced to load first. As a consequence, the symbols are also set undefined when the GRUB pre-*.o files are generated with 'ld -r'. The attached patch works for me with the bzr revision preceding the NEED_REGISTER_FRAME_INFO fix.Doesn't it risk linking e.g. __bswapsi2 into every module which uses it during partial link? It would increase module size on RISC
Partial linking with '-Wl,-r' does never pull any code from libraries. Specifying '-lgcc' has no effect in this case.
Cannot test this on RISC, it is at least true on i686-linux, -freebsd and -cygwin.
-- Regards, Christian Franke
[Prev in Thread] | Current Thread | [Next in Thread] |