summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/alpha/strlen.c
diff options
context:
space:
mode:
authorMystery Man <unknown@mandriva.org>2002-09-14 18:25:46 +0000
committerMystery Man <unknown@mandriva.org>2002-09-14 18:25:46 +0000
commit40fc236df0b0f5d9f61030264e4c82e88719a52e (patch)
treeb278238b7dc2559c8920bfb8a35f933b7754c7f5 /mdk-stage1/dietlibc/alpha/strlen.c
parentd4079232d73723aab49dfa9d81187a7e8a60bf55 (diff)
downloaddrakx-backup-do-not-use-40fc236df0b0f5d9f61030264e4c82e88719a52e.tar
drakx-backup-do-not-use-40fc236df0b0f5d9f61030264e4c82e88719a52e.tar.gz
drakx-backup-do-not-use-40fc236df0b0f5d9f61030264e4c82e88719a52e.tar.bz2
drakx-backup-do-not-use-40fc236df0b0f5d9f61030264e4c82e88719a52e.tar.xz
drakx-backup-do-not-use-40fc236df0b0f5d9f61030264e4c82e88719a52e.zip
This commit was manufactured by cvs2svn to create tag 'V1_1_9_48mdk'.V1_1_9_48mdk
Diffstat (limited to 'mdk-stage1/dietlibc/alpha/strlen.c')
-rw-r--r--mdk-stage1/dietlibc/alpha/strlen.c32
1 files changed, 0 insertions, 32 deletions
diff --git a/mdk-stage1/dietlibc/alpha/strlen.c b/mdk-stage1/dietlibc/alpha/strlen.c
deleted file mode 100644
index ac532254a..000000000
--- a/mdk-stage1/dietlibc/alpha/strlen.c
+++ /dev/null
@@ -1,32 +0,0 @@
-#include <string.h>
-
-static const unsigned long long magic = 0x0101010101010101LL;
-
-size_t strlen(const char *s)
-{
- const char *t = s;
- unsigned long long word;
-
- if (!s) return 0;
-
- /* Byte compare up until 64 bit word boundary */
- for (; ((unsigned long long) t & 7); t++)
- if (!*t) return t - s;
-
- /* Word compare */
- do {
- word = *((unsigned long long *) t); t += 8;
- word = (word - magic) &~ word;
- word &= (magic << 7);
- } while (word == 0);
-
- /* word & 0x8080808080808080 == word */
- word = (word - 1) & (magic << 8);
- word += (word << 32);
- word += (word << 16);
- word += (word << 8);
- t += word >> 56;
- return ((const char *) t) - 8 - s;
-}
-
-