https://git.reactos.org/?p=reactos.git;a=commitdiff;h=281389b7e73970fb93b07…
commit 281389b7e73970fb93b075adc3335a8090cc77fa
Author: Jérôme Gardou <jerome.gardou(a)reactos.org>
AuthorDate: Mon Nov 9 12:54:06 2020 +0100
Commit: Jérôme Gardou <zefklop(a)users.noreply.github.com>
CommitDate: Mon Nov 16 16:58:10 2020 +0100
[CRT] Use ASM aliases for CLang builds
---
sdk/lib/crt/stdlib/rot.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/sdk/lib/crt/stdlib/rot.c b/sdk/lib/crt/stdlib/rot.c
index 3c4b613a3a6..51a6a6c0218 100644
--- a/sdk/lib/crt/stdlib/rot.c
+++ b/sdk/lib/crt/stdlib/rot.c
@@ -19,8 +19,16 @@
#pragma function(_rotr, _rotl, _rotr, _lrotl, _lrotr)
#endif
-unsigned int _rotr( unsigned int value, int shift );
-unsigned long _lrotr(unsigned long value, int shift);
+#if defined (__clang__) && !defined(_MSC_VER)
+#define ASM_ALIAS __asm__
+#else
+#define ASM_ALIAS(x)
+#endif
+
+unsigned int _rotr( unsigned int value, int shift ) ASM_ALIAS("__rotr");
+unsigned long _lrotr(unsigned long value, int shift) ASM_ALIAS("__lrotr");
+unsigned int _rotl( unsigned int value, int shift ) ASM_ALIAS("__rotl");
+unsigned long _lrotl( unsigned long value, int shift ) ASM_ALIAS("__lrotl");
/*
* @implemented