added concrete implementations of putc(), getc(), getchar() and gets()
[tangerine.git] / arch / .unmaintained / m68k-native / utility / smult32.s
blob946fb85de895fb4b48e5a5d040fdb6d4d491143f
1 /*
2 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc: Utility 32 bit multiplication routines. m68k version.
6 Lang: english
7 */
9 #include "machine.i"
11 /* SMult32():
12 These are the signed/unsigned 32 bit multiplication routines.
13 I have two different possibilities here since I could be running
14 on a system without the corresponding muls.l/mulu.l calls.
16 After some soul searching I am happy that these routines don't
17 have to be separated between signed/unsigned since the sign is
18 correct, or the number overflows.
20 The native versions do make the difference however.
22 What I do is SetFunction() the correct function in later.
25 .balign 4
26 .globl AROS_SLIB_ENTRY(SMult32_020,Utility)
27 .type AROS_SLIB_ENTRY(SMult32_020,Utility),@function
28 AROS_SLIB_ENTRY(SMult32_020,Utility):
29 muls.l d1,d0
30 rts
33 This only contains the 020 version because the 000 versions of
34 both S and U are the same, but I need the separate files so that
35 the makefile tricks don't cause problems with duplicate symbols.