mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 16:05:51 +00:00
[CRT] Fix rot functions aliases in non-x86 clang builds
This commit is contained in:
parent
199adee3fe
commit
620f333252
1 changed files with 16 additions and 14 deletions
|
@ -11,25 +11,27 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
#ifdef __clang__
|
#ifdef __clang__
|
||||||
#define _rotl __function_rotl
|
# define _rotl __function_rotl
|
||||||
#define _rotr __function_rotr
|
# define _rotr __function_rotr
|
||||||
#define _lrotl __function_lrotl
|
# define _lrotl __function_lrotl
|
||||||
#define _lrotr __function_lrotr
|
# define _lrotr __function_lrotr
|
||||||
#elif defined(_MSC_VER)
|
#elif defined(_MSC_VER)
|
||||||
#pragma function(_rotr, _rotl, _rotr, _lrotl, _lrotr)
|
# pragma function(_rotr, _rotl, _rotr, _lrotl, _lrotr)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined (__clang__) && !defined(_MSC_VER)
|
#if defined (__clang__) && !defined(_MSC_VER)
|
||||||
#define ASM_ALIAS __asm__
|
# ifdef _M_IX86
|
||||||
#else
|
unsigned int _rotr( unsigned int value, int shift ) __asm__("__rotr");
|
||||||
#define ASM_ALIAS(x)
|
unsigned long _lrotr(unsigned long value, int shift) __asm__("__lrotr");
|
||||||
|
unsigned int _rotl( unsigned int value, int shift ) __asm__("__rotl");
|
||||||
|
unsigned long _lrotl( unsigned long value, int shift ) __asm__("__lrotl");
|
||||||
|
# else
|
||||||
|
unsigned int _rotr( unsigned int value, int shift ) __asm__("_rotr");
|
||||||
|
unsigned long _lrotr(unsigned long value, int shift) __asm__("_lrotr");
|
||||||
|
unsigned int _rotl( unsigned int value, int shift ) __asm__("_rotl");
|
||||||
|
unsigned long _lrotl( unsigned long value, int shift ) __asm__("_lrotl");
|
||||||
|
# endif
|
||||||
#endif
|
#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
|
* @implemented
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue