This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

FreeBSD port (21): i386/sysdep.h


Hi,

The PSEUDO macro in sysdeps/i386/sysdep.h is broken: The lack of a
semicolon after "jmp JUMPTARGET(syscall_error)" gives an assembler syntax
error.

Also, its L(name) macro is wrong for ELF, in such a way that every platform
specific sysdep.h needs to #undef and redefine it.


2002-07-06  Bruno Haible  <bruno@clisp.org>

	* sysdeps/i386/sysdep.h (PSEUDO): Fix syntax error.
	(L): Define right for ELF.
	* sysdeps/unix/sysv/linux/i386/sysdep.h (L): Remove definition. Now
	defined in sysdeps/i386/sysdep.h.

diff -r -c3 glibc-20020627.bak/sysdeps/i386/sysdep.h glibc-20020627/sysdeps/i386/sysdep.h
--- glibc-20020627.bak/sysdeps/i386/sysdep.h	Tue Jul 10 23:00:40 2001
+++ glibc-20020627/sysdeps/i386/sysdep.h	Fri Jul  5 01:17:10 2002
@@ -1,5 +1,5 @@
 /* Assembler macros for i386.
-   Copyright (C) 1991, 92, 93, 95, 96, 98 Free Software Foundation, Inc.
+   Copyright (C) 1991-1993, 95, 96, 98, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -97,9 +97,9 @@
 #endif
 
 #define	PSEUDO(name, syscall_name, args)				      \
-lose: SYSCALL_PIC_SETUP							      \
-  jmp JUMPTARGET(syscall_error)						      \
   .globl syscall_error;							      \
+lose: SYSCALL_PIC_SETUP							      \
+  jmp JUMPTARGET(syscall_error);					      \
   ENTRY (name)								      \
   DO_CALL (syscall_name, args);						      \
   jb lose
@@ -122,7 +122,11 @@
 
 /* Local label name for asm code. */
 #ifndef L
+#ifdef HAVE_ELF
+#define L(name)		.L##name
+#else
 #define L(name)		name
 #endif
+#endif
 
 #endif	/* __ASSEMBLER__ */
diff -r -c3 glibc-20020627.bak/sysdeps/unix/sysv/linux/i386/sysdep.h glibc-20020627/sysdeps/unix/sysv/linux/i386/sysdep.h
--- glibc-20020627.bak/sysdeps/unix/sysv/linux/i386/sysdep.h	Fri Jun 14 21:06:40 2002
+++ glibc-20020627/sysdeps/unix/sysv/linux/i386/sysdep.h	Fri Jul  5 01:18:01 2002
@@ -32,10 +32,6 @@
 #undef SYS_ify
 #define SYS_ify(syscall_name)	__NR_##syscall_name
 
-/* ELF-like local names start with `.L'.  */
-#undef L
-#define L(name)	.L##name
-
 #ifdef __ASSEMBLER__
 
 /* Linux uses a negative return value to indicate syscall errors,


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]