summaryrefslogtreecommitdiff
path: root/ANDROID_3.4.5/arch/m68k/lib/memset.c
diff options
context:
space:
mode:
Diffstat (limited to 'ANDROID_3.4.5/arch/m68k/lib/memset.c')
-rw-r--r--ANDROID_3.4.5/arch/m68k/lib/memset.c74
1 files changed, 0 insertions, 74 deletions
diff --git a/ANDROID_3.4.5/arch/m68k/lib/memset.c b/ANDROID_3.4.5/arch/m68k/lib/memset.c
deleted file mode 100644
index 8a7639f0..00000000
--- a/ANDROID_3.4.5/arch/m68k/lib/memset.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file COPYING in the main directory of this archive
- * for more details.
- */
-
-#include <linux/module.h>
-#include <linux/string.h>
-
-void *memset(void *s, int c, size_t count)
-{
- void *xs = s;
- size_t temp;
-
- if (!count)
- return xs;
- c &= 0xff;
- c |= c << 8;
- c |= c << 16;
- if ((long)s & 1) {
- char *cs = s;
- *cs++ = c;
- s = cs;
- count--;
- }
- if (count > 2 && (long)s & 2) {
- short *ss = s;
- *ss++ = c;
- s = ss;
- count -= 2;
- }
- temp = count >> 2;
- if (temp) {
- long *ls = s;
-#if defined(CONFIG_M68000) || defined(CONFIG_COLDFIRE)
- for (; temp; temp--)
- *ls++ = c;
-#else
- size_t temp1;
- asm volatile (
- " movel %1,%2\n"
- " andw #7,%2\n"
- " lsrl #3,%1\n"
- " negw %2\n"
- " jmp %%pc@(2f,%2:w:2)\n"
- "1: movel %3,%0@+\n"
- " movel %3,%0@+\n"
- " movel %3,%0@+\n"
- " movel %3,%0@+\n"
- " movel %3,%0@+\n"
- " movel %3,%0@+\n"
- " movel %3,%0@+\n"
- " movel %3,%0@+\n"
- "2: dbra %1,1b\n"
- " clrw %1\n"
- " subql #1,%1\n"
- " jpl 1b"
- : "=a" (ls), "=d" (temp), "=&d" (temp1)
- : "d" (c), "0" (ls), "1" (temp));
-#endif
- s = ls;
- }
- if (count & 2) {
- short *ss = s;
- *ss++ = c;
- s = ss;
- }
- if (count & 1) {
- char *cs = s;
- *cs = c;
- }
- return xs;
-}
-EXPORT_SYMBOL(memset);