diff options
Diffstat (limited to 'src/libmp/386/mpdigdiv.s')
-rw-r--r-- | src/libmp/386/mpdigdiv.s | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/src/libmp/386/mpdigdiv.s b/src/libmp/386/mpdigdiv.s deleted file mode 100644 index 48d37c0d..00000000 --- a/src/libmp/386/mpdigdiv.s +++ /dev/null @@ -1,33 +0,0 @@ -.text -.p2align 2,0x90 -.globl mpdigdiv -mpdigdiv: - /* Prelude */ - pushl %ebp /* save on stack */ - pushl %ebx - - leal 12(%esp), %ebp /* %ebp = FP for now */ - movl 0(%ebp), %ebx /* dividend */ - movl 0(%ebx), %eax - movl 4(%ebx), %edx - movl 4(%ebp), %ebx /* divisor */ - movl 8(%ebp), %ebp /* quotient */ - - xorl %ecx, %ecx - cmpl %ebx, %edx /* dividend >= 2^32 * divisor */ - jae divovfl - cmpl %ecx, %ebx /* divisor == 1 */ - je divovfl - divl %ebx /* AX = DX:AX/BX */ - movl %eax, (%ebp) -done: - /* Postlude */ - popl %ebx - popl %ebp - ret - - /* return all 1's */ -divovfl: - notl %ecx - movl %ecx, (%ebp) - jmp done |