https://git.reactos.org/?p=reactos.git;a=commitdiff;h=13356a9001119c60c912dcb7fa8a84605012757c

commit 13356a9001119c60c912dcb7fa8a84605012757c
Author:     Timo Kreuzer <timo.kreu...@reactos.org>
AuthorDate: Mon Dec 2 17:44:37 2024 +0200
Commit:     Timo Kreuzer <timo.kreu...@reactos.org>
CommitDate: Wed Jan 22 18:56:08 2025 +0200

    [VCRUNTIME] Fix _rotl64/_rotr64 inline asm
    
    %k is only valid for 32 bit operands.
---
 sdk/include/vcruntime/mingw32/intrin_x86.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sdk/include/vcruntime/mingw32/intrin_x86.h 
b/sdk/include/vcruntime/mingw32/intrin_x86.h
index 429b4896a03..0eb1da7258e 100644
--- a/sdk/include/vcruntime/mingw32/intrin_x86.h
+++ b/sdk/include/vcruntime/mingw32/intrin_x86.h
@@ -1227,7 +1227,7 @@ __INTRIN_INLINE unsigned int __cdecl _rotl(unsigned int 
value, int shift)
 __INTRIN_INLINE unsigned long long _rotl64(unsigned long long value, int shift)
 {
        unsigned long long retval;
-       __asm__("rolq %b[shift], %k[retval]" : [retval] "=rm" (retval) : 
"[retval]" (value), [shift] "Nc" (shift));
+       __asm__("rolq %b[shift], %[retval]" : [retval] "=rm" (retval) : 
"[retval]" (value), [shift] "Nc" (shift));
        return retval;
 }
 #else /* __x86_64__ */
@@ -1271,7 +1271,7 @@ __INTRIN_INLINE unsigned short __cdecl _rotr16(unsigned 
short value, unsigned ch
 __INTRIN_INLINE unsigned long long _rotr64(unsigned long long value, int shift)
 {
        unsigned long long retval;
-       __asm__("rorq %b[shift], %k[retval]" : [retval] "=rm" (retval) : 
"[retval]" (value), [shift] "Nc" (shift));
+       __asm__("rorq %b[shift], %[retval]" : [retval] "=rm" (retval) : 
"[retval]" (value), [shift] "Nc" (shift));
        return retval;
 }
 #else /* __x86_64__ */

Reply via email to