diff --git a/dlls/ntdll/large_int.c b/dlls/ntdll/large_int.c index 54ce6b09628..fc01f8356dd 100644 --- a/dlls/ntdll/large_int.c +++ b/dlls/ntdll/large_int.c @@ -259,14 +259,11 @@ ULONGLONG WINAPI RtlEnlargedUnsignedMultiply( UINT a, UINT b ) UINT WINAPI RtlEnlargedUnsignedDivide( ULONGLONG a, UINT b, UINT *remptr ) { #if defined(__i386__) && defined(__GNUC__) - UINT ret, rem, p1, p2; + UINT ret, rem; - p1 = a >> 32; - p2 = a & 0xffffffffLL; - - __asm__("divl %4,%%eax" + __asm__("divl %4" : "=a" (ret), "=d" (rem) - : "0" (p2), "1" (p1), "g" (b) ); + : "0" ((UINT)a), "1" ((UINT)(a >> 32)), "g" (b) ); if (remptr) *remptr = rem; return ret; #else