Jacek Caban : msvcrt: Use GCC-style assembly on Clang MSVC target.
Alexandre Julliard
julliard at winehq.org
Wed Dec 16 15:53:58 CST 2020
Module: wine
Branch: master
Commit: 05806e0edb05a2bc594201947d3637bcbf126d1b
URL: https://source.winehq.org/git/wine.git/?a=commit;h=05806e0edb05a2bc594201947d3637bcbf126d1b
Author: Jacek Caban <jacek at codeweavers.com>
Date: Mon Dec 14 18:10:04 2020 +0100
msvcrt: Use GCC-style assembly on Clang MSVC target.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/msvcrt/math.c | 14 +++++++-------
dlls/msvcrt/misc.c | 6 +++---
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c
index e5dd9cb2b8a..e6e837e52c6 100644
--- a/dlls/msvcrt/math.c
+++ b/dlls/msvcrt/math.c
@@ -1297,7 +1297,7 @@ double CDECL tanh( double x )
}
-#if defined(__GNUC__) && defined(__i386__)
+#if (defined(__GNUC__) || defined(__clang__)) && defined(__i386__)
#define CREATE_FPU_FUNC1(name, call) \
__ASM_GLOBAL_FUNC(name, \
@@ -1411,7 +1411,7 @@ __ASM_GLOBAL_FUNC(_ftol,
__ASM_CFI(".cfi_same_value %ebp\n\t")
"ret")
-#endif /* defined(__GNUC__) && defined(__i386__) */
+#endif /* (defined(__GNUC__) || defined(__clang__)) && defined(__i386__) */
/*********************************************************************
* _fpclass (MSVCRT.@)
@@ -1638,7 +1638,7 @@ double CDECL modf( double x, double *iptr )
#if defined(__i386__) || defined(__x86_64__)
void CDECL _statusfp2( unsigned int *x86_sw, unsigned int *sse2_sw )
{
-#ifdef __GNUC__
+#if defined(__GNUC__) || defined(__clang__)
unsigned int flags;
unsigned long fpword;
@@ -1710,7 +1710,7 @@ unsigned int CDECL _statusfp(void)
unsigned int CDECL _clearfp(void)
{
unsigned int flags = 0;
-#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
+#if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))
unsigned long fpword;
__asm__ __volatile__( "fnstsw %0; fnclex" : "=m" (fpword) );
@@ -1802,7 +1802,7 @@ double CDECL _chgsign(double num)
int CDECL __control87_2( unsigned int newval, unsigned int mask,
unsigned int *x86_cw, unsigned int *sse2_cw )
{
-#ifdef __GNUC__
+#if defined(__GNUC__) || defined(__clang__)
unsigned long fpword;
unsigned int flags;
unsigned int old_flags;
@@ -2152,7 +2152,7 @@ int CDECL _finite(double num)
*/
void CDECL _fpreset(void)
{
-#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
+#if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))
const unsigned int x86_cw = 0x27f;
__asm__ __volatile__( "fninit; fldcw %0" : : "m" (x86_cw) );
if (sse2_supported)
@@ -2171,7 +2171,7 @@ void CDECL _fpreset(void)
*/
int CDECL fesetenv(const fenv_t *env)
{
-#if defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))
+#if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))
struct {
WORD control_word;
WORD unused1;
diff --git a/dlls/msvcrt/misc.c b/dlls/msvcrt/misc.c
index 17019e9f5a7..5ea1ddfc6c7 100644
--- a/dlls/msvcrt/misc.c
+++ b/dlls/msvcrt/misc.c
@@ -213,7 +213,7 @@ void* CDECL bsearch(const void *key, const void *base, size_t nmemb,
*/
#ifdef __i386__
-# ifdef __GNUC__
+# if defined(__GNUC__) || defined(__clang__)
__ASM_GLOBAL_FUNC(_chkesp,
"jnz 1f\n\t"
@@ -242,7 +242,7 @@ void CDECL DECLSPEC_HIDDEN chkesp_fail(void)
DebugBreak();
}
-# else /* __GNUC__ */
+# else /* __GNUC__ || __clang__ */
/**********************************************************************/
@@ -250,7 +250,7 @@ void CDECL _chkesp(void)
{
}
-# endif /* __GNUC__ */
+# endif /* __GNUC__ || __clang__ */
#endif /* __i386__ */
More information about the wine-cvs
mailing list