about summary refs log tree commit diff
path: root/sysdeps/i386/sysdep.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-03-02 18:02:11 +0000
committerUlrich Drepper <drepper@redhat.com>1998-03-02 18:02:11 +0000
commitae828bc6f9a3ff47cb92846f71a9a7f8c6d5c941 (patch)
treebb606d530a4fb73de56d29c0a3433f6fe7f4ac27 /sysdeps/i386/sysdep.h
parentfb973e7f76fae77b6678921bc689960b65acf7ad (diff)
downloadglibc-ae828bc6f9a3ff47cb92846f71a9a7f8c6d5c941.tar.gz
glibc-ae828bc6f9a3ff47cb92846f71a9a7f8c6d5c941.tar.xz
glibc-ae828bc6f9a3ff47cb92846f71a9a7f8c6d5c941.zip
Update.
1998-03-02 17:55  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/add_n.S: Change to use ENTRY and END macro.
	* sysdeps/i386/addmul_1.S: Likewise.
	* sysdeps/i386/lshift.S: Likewise.
	* sysdeps/i386/mul_1.S: Likewise.
	* sysdeps/i386/rshift.S: Likewise.
	* sysdeps/i386/sub_n.S: Likewise.
	* sysdeps/i386/submul_1.S: Likewise.
	* sysdeps/i386/i586/add_n.S: Likewise.
	* sysdeps/i386/i586/addmul_1.S: Likewise.
	* sysdeps/i386/i586/lshift.S: Likewise.
	* sysdeps/i386/i586/mul_1.S: Likewise.
	* sysdeps/i386/i586/rshift.S: Likewise.
	* sysdeps/i386/i586/sub_n.S: Likewise.
	* sysdeps/i386/i586/submul_1.S: Likewise.

	* sysdeps/i386/sysdep.h: Extend last change.

	* sysdeps/unix/sysv/linux/i386/sysdep.h: Follow Intel's advice
	to have only one exit point for functions.

1998-03-02  Ulrich Drepper  <drepper@cygnus.com>

	* configure.in: Fix msgfmt test.  Fix handling of //s in sysdeps
	search.

1998-03-02 13:28  Ulrich Drepper  <drepper@cygnus.com>

	* Makerules: Generate libc.so with absolute paths for the used
	shared objects.

	* config.make.in: Add MAKEINFO definition.

1998-03-02  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/i386/sysdep.h (ASM_SIZE_DIRECTIVE): Add ; at the end.
	(ENTRY): Use STABS_FUN.
	(END): Use STABS_FUN_END.
	(STABS_FUN, STABS_FUN2, STABS_FUN_END): New macro to emit stabs info.

	* elf/Makefile: Add rules to build sprof program.
	* elf/sprof.c: New file.

1998-02-28  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* misc/syslog.c (openlog_internal): Insert missing closing brace.

1998-02-06  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* configure.in: Check for working msgfmt version (from GNU gettext
	0.10 or later).

1998-03-02  Ulrich Drepper  <drepper@cygnus.com>

	* configure.in: Avoid //s in sysdirs.
	Patch by Roland McGrath.

	* stdlib/a64l.c (a64l): Rewrite by Joe Keane <jgk@jgk.org>.

1998-03-02 07:17  H.J. Lu  <hjl@gnu.org>

	* elf/dl-open.c (_dl_open): Update _dl_global_scope_end when
	setting _dl_global_scope for RTLD_GLOBAL.

1998-02-27  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/make-syscalls.sh: Fix last change so that all
	possible lists of object-suffixes are taken care of.

1998-03-02 10:16  Ulrich Drepper  <drepper@cygnus.com>

	* timezone/private.h: Update from tzcode1998c.
	* timezone/zic.c: Likewise.
	* timezone/antarctica: Updated from tzdata1998c.
	* timezone/asia: Likewise.
	* timezone/australasia: Likewise.
	* timezone/europe: Likewise.
	* timezone/southamerica: Likewise.

1998-03-02  Ulrich Drepper  <drepper@cygnus.com>

	* posix/glob.c (glob_in_dir): Add support for cases insensitive
	VMS.  Patch by John W. Eaton <jwe@bevo.che.wisc.edu>.
Diffstat (limited to 'sysdeps/i386/sysdep.h')
-rw-r--r--sysdeps/i386/sysdep.h30
1 files changed, 26 insertions, 4 deletions
diff --git a/sysdeps/i386/sysdep.h b/sysdeps/i386/sysdep.h
index eea863304f..563e7dd009 100644
--- a/sysdeps/i386/sysdep.h
+++ b/sysdeps/i386/sysdep.h
@@ -1,5 +1,5 @@
 /* Assembler macros for i386.
-   Copyright (C) 1991, 92, 93, 95, 96 Free Software Foundation, Inc.
+   Copyright (C) 1991, 92, 93, 95, 96, 98 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
@@ -29,7 +29,7 @@
 #define ALIGNARG(log2) 1<<log2
 /* For ELF we need the `.type' directive to make shared libs work right.  */
 #define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg;
-#define ASM_SIZE_DIRECTIVE(name) .size name,.-name
+#define ASM_SIZE_DIRECTIVE(name) .size name,.-name;
 
 /* In ELF C symbols are asm symbols.  */
 #undef	NO_UNDERSCORES
@@ -44,17 +44,39 @@
 #endif
 
 
-/* Define an entry point visible from C.  */
+/* Define an entry point visible from C.
+
+   There is currently a bug in gdb which prevents us from specifying
+   incomplete stabs information.  Fake some entries here which specify
+   the current source file.  */
 #define	ENTRY(name)							      \
+  STABS_CURRENT_FILE1("")						      \
+  STABS_CURRENT_FILE(name)						      \
   ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name);				      \
   ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function)			      \
   .align ALIGNARG(4);							      \
+  STABS_FUN(name)							      \
   C_LABEL(name)								      \
   CALL_MCOUNT
 
 #undef	END
 #define END(name)							      \
-  ASM_SIZE_DIRECTIVE(name)
+  ASM_SIZE_DIRECTIVE(name)						      \
+  STABS_FUN_END(name)
+
+/* Remove the following two lines once the gdb bug is fixed.  */
+#define STABS_CURRENT_FILE(name)					      \
+  STABS_CURRENT_FILE1 (#name)
+#define STABS_CURRENT_FILE1(name)					      \
+  1: .stabs name,100,0,0,1b;
+/* Emit stabs definition lines.  We use F(0,1) and define t(0,1) as `int',
+   the same way gcc does it.  */
+#define STABS_FUN(name) STABS_FUN2(name, name##:F(0,1))
+#define STABS_FUN2(name, namestr)					      \
+  .stabs "int:t(0,1)=r(0,1);-2147483648;2147483647;",128,0,0,0;		      \
+  .stabs #namestr,36,0,0,name;
+#define STABS_FUN_END(name)						      \
+  1: .stabs "",36,0,0,1b-name;
 
 /* If compiled for profiling, call `mcount' at the start of each function.  */
 #ifdef	PROF