I have uploaded a snapshot of binutils-2.12.90
to MinGW's Sourceforge File Release page:
This snapshot features many fixes to windres that have been
incorporated into official binutils sources. Thanks go to
the ReactOs team.
Also new is the addition of checksums to pe headers. Again
thanks to the ReactOs team
The --export-all feature of ld has been modified to exclude
crtbegin.o and crtend.o by default. This was necessary because
of the requirement for these objects for Dwarf2 EH support.
A new switch --exclude-libs allows exclusion of whole libs
when building dlls using the export-all feature. Please read
documentation in the info or html files.
The snapshot continues to provide support for __fastcall
(added in last beta).
Here is what __fastcall is all about, if you missed it last time:
On the Intel 386, the `fastcall' attribute causes the compiler
to pass the fist two arguments in the registers ECX and EDX.
Subsequent arguments are passed on the stack. The called function
will pop the arguments off the stack. If the number of arguments
is variable all arguments are pushed on the stack.
To use fastcall mark your functions like so:
int __fastcall foo(int a, int b);
This will produce symbol @foo$8 (and _imp_@...@8
if marked as dllimport).
The --add-stdcall-alias and the --kill-at
features of dlltool and ld remove all decoration from
fastcall symbols, ie, they add the alias
foo = @foo@...
However, the --enable-stdcall-fixup feature (which is on by
default) has not yet been extended to fastcall symbols.
That is, an undefined symbol @foo@... will *not*
automatically be resolved to a defined symbol foo.
http://briefcase.yahoo.com.au - Yahoo! Briefcase
- Save your important files online for easy access!