3
Internal definitions used by Expat. This is not needed to compile
6
The following calling convention macros are defined for frequently
9
FASTCALL - Used for those internal functions that have a simple
10
body and a low number of arguments and local variables.
12
PTRCALL - Used for functions called though function pointers.
14
PTRFASTCALL - Like PTRCALL, but for low number of arguments.
16
inline - Used for selected internal functions for which inlining
17
may improve performance on some platforms.
19
Note: Use of these macros is based on judgement, not hard rules,
20
and therefore subject to change.
27
#if defined(__GNUC__) && defined(__i386__)
28
/* Instability reported with egcs on a RedHat Linux 7.3.
30
#define FASTCALL __attribute__((stdcall, regparm(3)))
33
#define FASTCALL __attribute__((regparm(3)))
35
#define PTRFASTCALL __attribute__((regparm(3)))
38
/* Using __fastcall seems to have an unexpected negative effect under
39
MS VC++, especially for function pointers, so we won't use it for
40
now on that platform. It may be reconsidered for a future release
41
if it can be made more effective.
42
Likely reason: __fastcall on Windows is like stdcall, therefore
43
the compiler cannot perform stack optimizations for call clusters.
64
#if !defined(__cplusplus) && !defined(inline)
66
#define inline __inline
69
#endif /* XML_MIN_SIZE */