ntdll: Implement 64-bit shifts.
Signed-off-by: André Hentschel <nerv@dawncrow.de> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
426a9efc3a
commit
d22964d952
|
@ -592,6 +592,39 @@ ULONGLONG WINAPI _aulldiv( ULONGLONG a, ULONGLONG b )
|
|||
return a / b;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* _allshl (NTDLL.@)
|
||||
*
|
||||
* Shift a 64 bit integer to the left.
|
||||
*
|
||||
* PARAMS
|
||||
* a [I] Initial number.
|
||||
* b [I] Number to shift a by to the left.
|
||||
*
|
||||
* RETURNS
|
||||
* The left-shifted value.
|
||||
*/
|
||||
LONGLONG WINAPI _allshl( LONGLONG a, LONG b )
|
||||
{
|
||||
return a << b;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* _allshr (NTDLL.@)
|
||||
*
|
||||
* Shift a 64 bit integer to the right.
|
||||
*
|
||||
* PARAMS
|
||||
* a [I] Initial number.
|
||||
* b [I] Number to shift a by to the right.
|
||||
*
|
||||
* RETURNS
|
||||
* The right-shifted value.
|
||||
*/
|
||||
LONGLONG WINAPI _allshr( LONGLONG a, LONG b )
|
||||
{
|
||||
return a >> b;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* _aullrem (NTDLL.@)
|
||||
|
@ -610,4 +643,21 @@ ULONGLONG WINAPI _aullrem( ULONGLONG a, ULONGLONG b )
|
|||
return a % b;
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* _aullshr (NTDLL.@)
|
||||
*
|
||||
* Shift a 64 bit unsigned integer to the right.
|
||||
*
|
||||
* PARAMS
|
||||
* a [I] Initial number.
|
||||
* b [I] Number to shift a by to the right.
|
||||
*
|
||||
* RETURNS
|
||||
* The right-shifted value.
|
||||
*/
|
||||
ULONGLONG WINAPI _aullshr( ULONGLONG a, LONG b )
|
||||
{
|
||||
return a >> b;
|
||||
}
|
||||
|
||||
#endif /* __i386__ */
|
||||
|
|
|
@ -1331,13 +1331,13 @@
|
|||
@ stdcall -private -arch=i386 -ret64 _allmul(int64 int64)
|
||||
@ stdcall -private -arch=i386 -norelay _alloca_probe()
|
||||
@ stdcall -private -arch=i386 -ret64 _allrem(int64 int64)
|
||||
# @ stub _allshl
|
||||
# @ stub _allshr
|
||||
@ stdcall -private -arch=i386 -ret64 _allshl(int64 long)
|
||||
@ stdcall -private -arch=i386 -ret64 _allshr(int64 long)
|
||||
@ cdecl -private -ret64 _atoi64(str)
|
||||
@ stdcall -private -arch=i386 -ret64 _aulldiv(int64 int64)
|
||||
# @ stub _aulldvrm
|
||||
@ stdcall -private -arch=i386 -ret64 _aullrem(int64 int64)
|
||||
# @ stub _aullshr
|
||||
@ stdcall -private -arch=i386 -ret64 _aullshr(int64 long)
|
||||
@ stdcall -private -arch=i386 -norelay _chkstk()
|
||||
@ stub _fltused
|
||||
@ cdecl -private -arch=i386 -ret64 _ftol() NTDLL__ftol
|
||||
|
|
|
@ -1400,12 +1400,12 @@
|
|||
@ stdcall -private -arch=i386 -ret64 _allmul(int64 int64) ntdll._allmul
|
||||
@ stdcall -private -arch=i386 -norelay _alloca_probe() ntdll._alloca_probe
|
||||
@ stdcall -private -arch=i386 -ret64 _allrem(int64 int64) ntdll._allrem
|
||||
@ stub _allshl
|
||||
@ stub _allshr
|
||||
@ stdcall -private -arch=i386 -ret64 _allshl(int64 long) ntdll._allshl
|
||||
@ stdcall -private -arch=i386 -ret64 _allshr(int64 long) ntdll._allshr
|
||||
@ stdcall -private -arch=i386 -ret64 _aulldiv(int64 int64) ntdll._aulldiv
|
||||
@ stub _aulldvrm
|
||||
@ stdcall -private -arch=i386 -ret64 _aullrem(int64 int64) ntdll._aullrem
|
||||
@ stub _aullshr
|
||||
@ stdcall -private -arch=i386 -ret64 _aullshr(int64 long) ntdll._aullshr
|
||||
@ cdecl -private -arch=i386 _except_handler2(ptr ptr ptr ptr) msvcrt._except_handler2
|
||||
@ cdecl -private -arch=i386 _except_handler3(ptr ptr ptr ptr) msvcrt._except_handler3
|
||||
@ cdecl -private -arch=i386 _global_unwind2(ptr) msvcrt._global_unwind2
|
||||
|
|
Loading…
Reference in New Issue