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>
diff --git a/mingw-w64-crt/def-include/func.def.in b/mingw-w64-crt/def-include/func.def.in
index 0d1ea77..fdda790 100644
--- a/mingw-w64-crt/def-include/func.def.in
+++ b/mingw-w64-crt/def-include/func.def.in
@@ -63,6 +63,7 @@
 
 #if defined(DEF_I386)
 #define STDCALL_DECORATED_EXPORT(symbol) symbol == _ ## symbol
+#define FASTCALL_DECORATED_EXPORT(symbol) symbol == symbol
 #endif
 
 #endif // FUNC_DEF_IN
diff --git a/mingw-w64-crt/lib32/msvcr80.def.in b/mingw-w64-crt/lib32/msvcr80.def.in
index 9d4e30e..0e68425 100644
--- a/mingw-w64-crt/lib32/msvcr80.def.in
+++ b/mingw-w64-crt/lib32/msvcr80.def.in
@@ -143,9 +143,9 @@
 
 ; Symbols from the original Microsoft Visual C++ 2005 version of msvcr80.dll
 __uncaught_exception
-@_calloc_crt@8
-@_malloc_crt@4
-@_realloc_crt@8
+FASTCALL_DECORATED_EXPORT(@_calloc_crt@8)
+FASTCALL_DECORATED_EXPORT(@_malloc_crt@4)
+FASTCALL_DECORATED_EXPORT(@_realloc_crt@8)
 $I10_OUTPUT
 _CIacos
 _CIasin
diff --git a/mingw-w64-crt/lib32/msvcr80d.def.in b/mingw-w64-crt/lib32/msvcr80d.def.in
index 6bcbf03..ed7d3e8 100644
--- a/mingw-w64-crt/lib32/msvcr80d.def.in
+++ b/mingw-w64-crt/lib32/msvcr80d.def.in
@@ -160,9 +160,9 @@
 
 ; Symbols from the original Microsoft Visual C++ 2005 version of msvcr80d.dll
 __uncaught_exception
-@_calloc_crt@8
-@_malloc_crt@4
-@_realloc_crt@8
+FASTCALL_DECORATED_EXPORT(@_calloc_crt@8)
+FASTCALL_DECORATED_EXPORT(@_malloc_crt@4)
+FASTCALL_DECORATED_EXPORT(@_realloc_crt@8)
 $I10_OUTPUT
 _CIacos
 _CIasin