Module Name: src
Committed By: tsutsui
Date: Mon Mar 23 13:41:00 UTC 2009
Modified Files:
src/sys/lib/libkern: libkern.h
Log Message:
Don't use gcc's __builtin_*() functions #if defined(_STANDALONE)
because they could be larger than __OPTIMIZE_SIZE__'ed libsa ones and
__builtin_memcpy() on vax rejects NULL (i.e. copying from/to address 0x0).
No particular comments on tech-toolchain.
Tested on alpha, arc, cobalt, hp300, i386, landisk, macppc, news68k, sgimips,
sparc, sparc64, sun3, and vax (on simh).
To generate a diff of this commit:
cvs rdiff -u -r1.87 -r1.88 src/sys/lib/libkern/libkern.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/lib/libkern/libkern.h
diff -u src/sys/lib/libkern/libkern.h:1.87 src/sys/lib/libkern/libkern.h:1.88
--- src/sys/lib/libkern/libkern.h:1.87 Wed Mar 18 12:25:06 2009
+++ src/sys/lib/libkern/libkern.h Mon Mar 23 13:41:00 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: libkern.h,v 1.87 2009/03/18 12:25:06 tsutsui Exp $ */
+/* $NetBSD: libkern.h,v 1.88 2009/03/23 13:41:00 tsutsui Exp $ */
/*-
* Copyright (c) 1992, 1993
@@ -257,11 +257,12 @@
void *memcpy(void *, const void *, size_t);
int memcmp(const void *, const void *, size_t);
void *memset(void *, int, size_t);
-#if __GNUC_PREREQ__(2, 95) && (__GNUC_PREREQ__(4, 0) || !defined(__vax__))
+#if __GNUC_PREREQ__(2, 95) && (__GNUC_PREREQ__(4, 0) || !defined(__vax__)) && \
+ !defined(_STANDALONE)
#define memcpy(d, s, l) __builtin_memcpy(d, s, l)
#define memcmp(a, b, l) __builtin_memcmp(a, b, l)
#endif
-#if __GNUC_PREREQ__(2, 95) && !defined(__vax__)
+#if __GNUC_PREREQ__(2, 95) && !defined(__vax__) && !defined(_STANDALONE)
#define memset(d, v, l) __builtin_memset(d, v, l)
#endif
@@ -269,7 +270,7 @@
int strcmp(const char *, const char *);
size_t strlen(const char *);
char *strsep(char **, const char *);
-#if __GNUC_PREREQ__(2, 95)
+#if __GNUC_PREREQ__(2, 95) && !defined(_STANDALONE)
#define strcpy(d, s) __builtin_strcpy(d, s)
#define strcmp(a, b) __builtin_strcmp(a, b)
#define strlen(a) __builtin_strlen(a)