crt: msvcr80: Fix decorated fastcall exports
Symbols @_calloc_crt@8, @_malloc_crt@4 and @_realloc_crt@8 are exported
from msvcr80 DLL libraries with their @suffix decoration. This is not
usual.
Those decorated symbols refers to fastcall function calling convention.
When generating import library, @suffix must not be trimmed (which is done
by default by mingw-w64 build procedure due to usage of dlltool --kill-at
switch), otherwise linking would fail.
Note that suffix @size for fastcall functions does not refer to size of the
stack used for arguments, but rather to size of all arguments (passed in
registers + stack). All these functions take arguments only in registers.
So fix symbols in import libraries by rename operator '==' like it is
already used for stdcall decorated symbols. dlltool --kill-at switch does
not trim right side of the rename operator '=='.
To make declarations of these functions more readable, introduce a new
FASTCALL_DECORATED_EXPORT() macro for it.
Signed-off-by: LIU Hao <lh_mouse@126.com>
3 files changed