Commit Graph

20 Commits

Author SHA1 Message Date
Martin Storsjo 8fb8cc03c3 arm64: Use __builtin_ms_va_list and __attribute__((ms_abi)) on arm64.
Windows uses a different ABI for va_list on arm64 just like on x86_64.

On x86_64, the calling convention for windows functions is completely
different from the one on other platforms. On arm64, they're mostly the
same, with the only exception being variadic functions (where all float
arguments are passed in integer registers, since the va_list is a single
pointer).

Any functions using __builtin_ms_va_start need to be decorated with
__attribute__((ms_abi)).

Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-10 08:36:58 +02:00
Alexandre Julliard 5c50ec0c74 include: Don't use floating point for WINAPI functions when building for soft-float on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:55 +01:00
Alexandre Julliard 644f497e87 include: Use the hard-float calling convention for Windows APIs on ARM
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 10:24:26 +01:00
Alexandre Julliard 7726157e19 msvcrt: Use WINAPIV calling convention for variadic functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 10:20:02 +01:00
Daniel Lehman 1fdebb77ec include: Remove references to SPARC.
SPARC support removed in 2013.

Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-04 09:13:12 +02:00
Alexandre Julliard 206e8b147b include: Update stdcall and cdecl definitions in crtdefs.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 21:25:22 +09:00
Martin Storsjo 589f58d806 msvcr120: Implement the _vacopy function. 2014-12-08 17:08:51 +01:00
André Hentschel 5c8da80801 include: Add remaining checks for ARM64. 2013-01-28 15:38:03 +01:00
Austin English d67275fed8 include: Define _WIN64 on sparc/powerpc64. 2011-11-08 09:50:06 +01:00
Piotr Caban 27ff2ae967 msvcrt: Improved locale initialization. 2011-05-26 13:38:22 +02:00
Piotr Caban 00182ca6d9 msvcrt: Added sprintf_p_l implementation. 2011-04-27 13:18:59 +02:00
Nikolay Sivov ad6bc94491 msvcrt: Add _atoflt and _atoflt_l implementations. 2011-01-19 12:22:27 +01:00
Alexandre Julliard 8f1ea6eeb1 include: Make sure wine/port.h and msvcrt headers are not used together. 2010-07-22 17:40:55 +02:00
Alexander Scott-Johns 5361263bdb include/msvcrt: Update a bit. 2010-06-17 14:07:19 +02:00
Alexandre Julliard 7f69436ea8 include: Specify explicit alignment for __int64 types. 2009-11-21 14:31:45 +01:00
Alexandre Julliard 580e07e7ba include/msvcrt: Add explicit msvcrt_long types to replace long for 64-bit compatibility. 2009-05-23 11:57:39 +02:00
Alexandre Julliard 8408e3a955 msvcrt: Add explicit 32- and 64-bit versions of the time functions. 2009-05-23 11:12:12 +02:00
Alexandre Julliard 3ad7f77298 include/msvcrt: Replace va_list by __ms_va_list for x86_64. 2009-01-07 11:10:26 +01:00
Alexandre Julliard fcd2ff9703 include: Fix the msvcrt time_t definition on 64-bit. 2009-01-04 14:47:58 +01:00
Alexandre Julliard 33fa6c2e25 include: Add the msvcrt/crtdefs.h header and include it where needed. 2008-12-12 10:19:55 +01:00