hugetlb: introduce generic version of hugetlb_free_pgd_range
[linux/fpc-iii.git] / arch / x86 / math-emu / div_small.S
blob8f5025c80ee055dc846553143844690158f6d4fa
1 /* SPDX-License-Identifier: GPL-2.0 */
2         .file   "div_small.S"
3 /*---------------------------------------------------------------------------+
4  |  div_small.S                                                              |
5  |                                                                           |
6  | Divide a 64 bit integer by a 32 bit integer & return remainder.           |
7  |                                                                           |
8  | Copyright (C) 1992,1995                                                   |
9  |                       W. Metzenthen, 22 Parker St, Ormond, Vic 3163,      |
10  |                       Australia.  E-mail billm@jacobi.maths.monash.edu.au |
11  |                                                                           |
12  |                                                                           |
13  +---------------------------------------------------------------------------*/
15 /*---------------------------------------------------------------------------+
16  |    unsigned long FPU_div_small(unsigned long long *x, unsigned long y)    |
17  +---------------------------------------------------------------------------*/
19 #include "fpu_emu.h"
21 .text
22 ENTRY(FPU_div_small)
23         pushl   %ebp
24         movl    %esp,%ebp
26         pushl   %esi
28         movl    PARAM1,%esi     /* pointer to num */
29         movl    PARAM2,%ecx     /* The denominator */
31         movl    4(%esi),%eax    /* Get the current num msw */
32         xorl    %edx,%edx
33         divl    %ecx
35         movl    %eax,4(%esi)
37         movl    (%esi),%eax     /* Get the num lsw */
38         divl    %ecx
40         movl    %eax,(%esi)
42         movl    %edx,%eax       /* Return the remainder in eax */
44         popl    %esi
46         leave
47         ret
48 ENDPROC(FPU_div_small)