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



_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to