Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Jun 2002 11:40:59 -0700
From:      "David O'Brien" <obrien@freebsd.org>
To:        Mark Murray <mark@grondar.za>
Cc:        audit@freebsd.org
Subject:   Re: lib/csu cleanup - review please
Message-ID:  <20020625114059.B1424@dragon.nuxi.com>
In-Reply-To: <200206231830.g5NIUAa4045990@grimreaper.grondar.org>; from mark@grondar.za on Fri, Jun 21, 2002 at 04:58:06PM %2B0100
References:  <200206231830.g5NIUAa4045990@grimreaper.grondar.org>

next in thread | previous in thread | raw e-mail | index | archive | help

Index: crt1.c
===================================================================
RCS file: /home/ncvs/src/lib/csu/i386-elf/crt1.c,v
retrieving revision 1.7
diff -u -r1.7 crt1.c
--- crt1.c	29 Mar 2002 22:43:41 -0000	1.7
+++ crt1.c	25 Jun 2002 18:40:38 -0000
@@ -37,6 +37,7 @@
 extern void _fini(void);
 extern void _init(void);
 extern int main(int, char **, char **);
+extern void _start(char *, ...);
 
 #ifdef GCRT
 extern void _mcleanup(void);
@@ -48,14 +49,17 @@
 extern int _DYNAMIC;
 #pragma weak _DYNAMIC
 
-#ifdef __i386__
-#define get_rtld_cleanup()				\
-    ({ fptr __value;					\
-       __asm__("movl %%edx,%0" : "=rm"(__value));	\
-       __value; })
+static __inline fptr get_rtld_cleanup(void);
+__inline fptr get_rtld_cleanup() {
+	fptr __value;
+#ifdef __GNUC__
+	__asm__("movl %%edx,%0" : "=rm"(__value));
 #else
-#error "This file only supports the i386 architecture"
+#error "GCC is needed to compile this file"
+	__value = 0;	/* shut up lint */
 #endif
+	return __value;
+}
 
 char **environ;
 const char *__progname = "";

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-audit" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020625114059.B1424>