2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
	* sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.

2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>

	* sysdeps/i386/i686/memcmp.S: Use jump table as the base of
	jump table entries.

2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
	`clone' function to ensure proper unwinding stop of gdb.
	* sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.

2006-11-23  Jakub Jelinek  <jakub@redhat.com>

	[BZ #3514]
	* manual/string.texi (strncmp): Fix pastos from wcscmp description.

	[BZ #3515]
	* manual/string.texi (strtok): Remove duplicate paragraph.
This commit is contained in:
Ulrich Drepper 2006-12-03 23:16:24 +00:00
parent 4e3df412a1
commit 30a58e6599
6 changed files with 65 additions and 87 deletions

View File

@ -1,8 +1,31 @@
2006-12-03 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
2006-11-30 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/i386/i686/memcmp.S: Use jump table as the base of
jump table entries.
2006-11-30 Jan Kratochvil <jan.kratochvil@redhat.com>
* sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
`clone' function to ensure proper unwinding stop of gdb.
* sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
2006-12-01 Ulrich Drepper <drepper@redhat.com> 2006-12-01 Ulrich Drepper <drepper@redhat.com>
* nscd/nscd.init: Remove obsolete and commented-out -S option * nscd/nscd.init: Remove obsolete and commented-out -S option
handling. handling.
2006-11-23 Jakub Jelinek <jakub@redhat.com>
[BZ #3514]
* manual/string.texi (strncmp): Fix pastos from wcscmp description.
[BZ #3515]
* manual/string.texi (strtok): Remove duplicate paragraph.
2006-12-01 Jan Kratochvil <jan.kratochvil@redhat.com> 2006-12-01 Jan Kratochvil <jan.kratochvil@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with

View File

@ -1187,8 +1187,8 @@ regards these characters as parts of the alphabet they do match.
@comment ISO @comment ISO
@deftypefun int strncmp (const char *@var{s1}, const char *@var{s2}, size_t @var{size}) @deftypefun int strncmp (const char *@var{s1}, const char *@var{s2}, size_t @var{size})
This function is the similar to @code{strcmp}, except that no more than This function is the similar to @code{strcmp}, except that no more than
@var{size} wide characters are compared. In other words, if the two @var{size} characters are compared. In other words, if the two
strings are the same in their first @var{size} wide characters, the strings are the same in their first @var{size} characters, the
return value is zero. return value is zero.
@end deftypefun @end deftypefun
@ -1962,11 +1962,6 @@ If the end of the string @var{newstring} is reached, or if the remainder of
string consists only of delimiter characters, @code{strtok} returns string consists only of delimiter characters, @code{strtok} returns
a null pointer. a null pointer.
Note that ``character'' is here used in the sense of byte. In a string
using a multibyte character encoding (abstract) character consisting of
more than one byte are not treated as an entity. Each byte is treated
separately. The function is not locale-dependent.
Note that ``character'' is here used in the sense of byte. In a string Note that ``character'' is here used in the sense of byte. In a string
using a multibyte character encoding (abstract) character consisting of using a multibyte character encoding (abstract) character consisting of
more than one byte are not treated as an entity. Each byte is treated more than one byte are not treated as an entity. Each byte is treated

View File

@ -380,38 +380,38 @@ END (BP_SYM (memcmp))
.section .rodata .section .rodata
ALIGN (2) ALIGN (2)
L(table_32bytes) : L(table_32bytes) :
.long L(0bytes) - . + 0x0 .long L(0bytes) - L(table_32bytes)
.long L(1bytes) - . + 0x4 .long L(1bytes) - L(table_32bytes)
.long L(2bytes) - . + 0x8 .long L(2bytes) - L(table_32bytes)
.long L(3bytes) - . + 0xc .long L(3bytes) - L(table_32bytes)
.long L(4bytes) - . + 0x10 .long L(4bytes) - L(table_32bytes)
.long L(5bytes) - . + 0x14 .long L(5bytes) - L(table_32bytes)
.long L(6bytes) - . + 0x18 .long L(6bytes) - L(table_32bytes)
.long L(7bytes) - . + 0x1c .long L(7bytes) - L(table_32bytes)
.long L(8bytes) - . + 0x20 .long L(8bytes) - L(table_32bytes)
.long L(9bytes) - . + 0x24 .long L(9bytes) - L(table_32bytes)
.long L(10bytes) - . + 0x28 .long L(10bytes) - L(table_32bytes)
.long L(11bytes) - . + 0x2c .long L(11bytes) - L(table_32bytes)
.long L(12bytes) - . + 0x30 .long L(12bytes) - L(table_32bytes)
.long L(13bytes) - . + 0x34 .long L(13bytes) - L(table_32bytes)
.long L(14bytes) - . + 0x38 .long L(14bytes) - L(table_32bytes)
.long L(15bytes) - . + 0x3c .long L(15bytes) - L(table_32bytes)
.long L(16bytes) - . + 0x40 .long L(16bytes) - L(table_32bytes)
.long L(17bytes) - . + 0x44 .long L(17bytes) - L(table_32bytes)
.long L(18bytes) - . + 0x48 .long L(18bytes) - L(table_32bytes)
.long L(19bytes) - . + 0x4c .long L(19bytes) - L(table_32bytes)
.long L(20bytes) - . + 0x50 .long L(20bytes) - L(table_32bytes)
.long L(21bytes) - . + 0x54 .long L(21bytes) - L(table_32bytes)
.long L(22bytes) - . + 0x58 .long L(22bytes) - L(table_32bytes)
.long L(23bytes) - . + 0x5c .long L(23bytes) - L(table_32bytes)
.long L(24bytes) - . + 0x60 .long L(24bytes) - L(table_32bytes)
.long L(25bytes) - . + 0x64 .long L(25bytes) - L(table_32bytes)
.long L(26bytes) - . + 0x68 .long L(26bytes) - L(table_32bytes)
.long L(27bytes) - . + 0x6c .long L(27bytes) - L(table_32bytes)
.long L(28bytes) - . + 0x70 .long L(28bytes) - L(table_32bytes)
.long L(29bytes) - . + 0x74 .long L(29bytes) - L(table_32bytes)
.long L(30bytes) - . + 0x78 .long L(30bytes) - L(table_32bytes)
.long L(31bytes) - . + 0x7c .long L(31bytes) - L(table_32bytes)
#undef bcmp #undef bcmp

View File

@ -120,6 +120,9 @@ L(pseudo_end):
ret ret
L(thread_start): L(thread_start):
cfi_startproc;
/* Clearing frame pointer is insufficient, use CFI. */
cfi_undefined (eip);
/* Note: %esi is zero. */ /* Note: %esi is zero. */
movl %esi,%ebp /* terminate the stack frame */ movl %esi,%ebp /* terminate the stack frame */
#ifdef RESET_PID #ifdef RESET_PID
@ -152,6 +155,7 @@ L(nomoregetpid):
jmp L(haspid) jmp L(haspid)
.previous .previous
#endif #endif
cfi_endproc;
cfi_startproc cfi_startproc
PSEUDO_END (BP_SYM (__clone)) PSEUDO_END (BP_SYM (__clone))

View File

@ -1,48 +0,0 @@
/* Copyright (C) 1996, 1998, 1999, 2000 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
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SYS_IO_H
#define _SYS_IO_H 1
#include <features.h>
__BEGIN_DECLS
/* If TURN_ON is TRUE, request for permission to do direct i/o on the
port numbers in the range [FROM,FROM+NUM-1]. Otherwise, turn I/O
permission off for that range. This call requires root privileges. */
extern int ioperm (unsigned long int __from, unsigned long int __num,
int __turn_on) __THROW;
/* Set the I/O privilege level to LEVEL. If LEVEL is nonzero,
permission to access any I/O port is granted. This call requires
root privileges. */
extern int iopl (int __level) __THROW;
/* The functions that actually perform reads and writes. */
extern unsigned char inb (unsigned long int port) __THROW;
extern unsigned short int inw (unsigned long int port) __THROW;
extern unsigned long int inl (unsigned long int port) __THROW;
extern void outb (unsigned char value, unsigned long int port) __THROW;
extern void outw (unsigned short value, unsigned long int port) __THROW;
extern void outl (unsigned long value, unsigned long int port) __THROW;
__END_DECLS
#endif /* _SYS_IO_H */

View File

@ -89,6 +89,9 @@ L(pseudo_end):
ret ret
L(thread_start): L(thread_start):
cfi_startproc;
/* Clearing frame pointer is insufficient, use CFI. */
cfi_undefined (rip);
/* Clear the frame pointer. The ABI suggests this be done, to mark /* Clear the frame pointer. The ABI suggests this be done, to mark
the outermost frame obviously. */ the outermost frame obviously. */
xorl %ebp, %ebp xorl %ebp, %ebp
@ -113,6 +116,7 @@ L(thread_start):
/* Call exit with return value from function call. */ /* Call exit with return value from function call. */
movq %rax, %rdi movq %rax, %rdi
call HIDDEN_JUMPTARGET (_exit) call HIDDEN_JUMPTARGET (_exit)
cfi_endproc;
cfi_startproc; cfi_startproc;
PSEUDO_END (BP_SYM (__clone)) PSEUDO_END (BP_SYM (__clone))