+#if defined(__mc68020__) || defined(__mc68030__) || \
+ á ádefined(__mc68040__) || defined(__mc68060__)
+
+#define umul_ppmm(w1, w0, u, v) \
+ á__asm__ ("mulu%.l %3,%1:%0" á á á á á á á á á á á á á á á á
á á á á á\
+ á á á á á : "=d" ((USItype)(w0)), á á á á á á á á á á á á á
á á á á á \
+ á á á á á á "=d" ((USItype)(w1)) á á á á á á á á á á á á á
á á á á á á\
+ á á á á á : "%0" ((USItype)(u)), á á á á á á á á á á á á á
á á á á á á\
+ á á á á á á "dmi" ((USItype)(v)))
+
+#else
+
á#define __BITS4 (SI_TYPE_SIZE / 4)
á#define __ll_B (1L<< (SI_TYPE_SIZE / 2))
á#define __ll_lowpart(t) ((USItype) (t) % __ll_B)
@@ -51,6 +63,8 @@ Boston, MA 02111-1307, USA. á*/
á á (w0) = __ll_lowpart (__x1) * __ll_B + __ll_lowpart (__x0); á á á á \
á } while (0)
+#endif
+
á#define __umulsidi3(u, v) \
á ({DIunion __w; á á á á á á á á á á á á á á á á á á á á
á á á á á á á \
á á umul_ppmm (__w.s.high, __w.s.low, u, v); á á á á á á á á á á á
á á \
diff --git a/arch/m68k/lib/muldi3_mm.c b/arch/m68k/lib/muldi3_mm.c
deleted file mode 100644
index be4f275..0000000
--- a/arch/m68k/lib/muldi3_mm.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/* muldi3.c extracted from gcc-2.7.2.3/libgcc2.c and
- á á á á á á á á á á á á ágcc-2.7.2.3/longlong.h which is: */
-/* Copyright (C) 1989, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
-
-This file is part of GNU CC.
-
-GNU CC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU CC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. áSee the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU CC; see the file COPYING. áIf not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. á*/
-
-#define BITS_PER_UNIT 8
-
-#define umul_ppmm(w1, w0, u, v) \
- á__asm__ ("mulu%.l %3,%1:%0" á á á á á á á á á á á á á á á á
á á á á á\
- á á á á á : "=d" ((USItype)(w0)), á á á á á á á á á á á á á
á á á á á \
- á á á á á á "=d" ((USItype)(w1)) á á á á á á á á á á á á á
á á á á á á\
- á á á á á : "%0" ((USItype)(u)), á á á á á á á á á á á á á
á á á á á á\
- á á á á á á "dmi" ((USItype)(v)))
-
-#define __umulsidi3(u, v) \
- á({DIunion __w; á á á á á á á á á á á á á á á á á á á á
á á á á á á á \
- á áumul_ppmm (__w.s.high, __w.s.low, u, v); á á á á á á á á á á
á á á \
- á á__w.ll; })
-
-typedef á á á á á á á á int SItype á á __attribute__ ((mode (SI)));
-typedef unsigned int USItype á __attribute__ ((mode (SI)));
-typedef á á á á á á á á int DItype á á __attribute__ ((mode (DI)));
-typedef int word_type __attribute__ ((mode (__word__)));
-
-struct DIstruct {SItype high, low;};
-
-typedef union
-{
- ástruct DIstruct s;
- áDItype ll;
-} DIunion;
-
-DItype
-__muldi3 (DItype u, DItype v)
-{
- áDIunion w;
- áDIunion uu, vv;
-
- áuu.ll = u,
- ávv.ll = v;
-
- áw.ll = __umulsidi3 (uu.s.low, vv.s.low);
- áw.s.high += ((USItype) uu.s.low * (USItype) vv.s.high
- á á á á á á á+ (USItype) uu.s.high * (USItype) vv.s.low);
-
- áreturn w.ll;
-}
--
1.7.0.4
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [email protected]
More majordomo info at áhttp://vger.kernel.org/majordomo-info.html