Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839/* SPDX-License-Identifier: GPL-2.0 */#ifndef _M68K_STRING_H_#define _M68K_STRING_H_
#include <linux/types.h>#include <linux/compiler.h>
#define __HAVE_ARCH_STRNLENstatic inline size_t strnlen(const char *s, size_t count){ const char *sc = s;
asm volatile ("\n" "1: subq.l #1,%1\n" " jcs 2f\n" " tst.b (%0)+\n" " jne 1b\n" " subq.l #1,%0\n" "2:" : "+a" (sc), "+d" (count)); return sc - s;}
#define __HAVE_ARCH_MEMMOVEextern void *memmove(void *, const void *, __kernel_size_t);
extern int memcmp(const void *, const void *, __kernel_size_t);#define memcmp(d, s, n) __builtin_memcmp(d, s, n)
#define __HAVE_ARCH_MEMSETextern void *memset(void *, int, __kernel_size_t);#define memset(d, c, n) __builtin_memset(d, c, n)
#define __HAVE_ARCH_MEMCPYextern void *memcpy(void *, const void *, __kernel_size_t);#define memcpy(d, s, n) __builtin_memcpy(d, s, n)
#endif /* _M68K_STRING_H_ */