1 #------------------------------------------------------------------------------
3 # Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
4 # This program and the accompanying materials
5 # are licensed and made available under the terms and conditions of the BSD License
6 # which accompanies this distribution. The full text of the license may be found at
7 # http://opensource.org/licenses/bsd-license.php.
9 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 # 64-bit Math Worker Function.
19 # Divides a 64-bit unsigned value with a 64-bit unsigned value and returns
20 # a 64-bit unsigned result.
22 #------------------------------------------------------------------------------
27 ASM_GLOBAL ASM_PFX(__udivdi3), ASM_PFX(DivU64x64Remainder)
29 #------------------------------------------------------------------------------
31 # void __cdecl __udivdi3 (void)
33 #------------------------------------------------------------------------------
35 # Original local stack when calling __udivdi3
48 # ESP---->|---------------|
52 # Set up the local stack for NULL Reminder pointer
58 # Set up the local stack for Divisor parameter
66 # Set up the local stack for Dividend parameter
74 # Call native DivU64x64Remainder of BaseLib
76 jmp ASM_PFX(DivU64x64Remainder)