This is the mail archive of the glibc-cvs@sourceware.org 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]

GNU C Library master sources branch master updated. glibc-2.26.9000-699-g95b93c6


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  95b93c6e0d7bf0321f265cf6e85c7fb4417cbda6 (commit)
      from  1bb3653925eae1226cd18a3d700371291850b20f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=95b93c6e0d7bf0321f265cf6e85c7fb4417cbda6

commit 95b93c6e0d7bf0321f265cf6e85c7fb4417cbda6
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Nov 1 05:37:10 2017 -0700

    x86: Add sysdeps/x86/sysdep.h
    
    Add a new header file, sysdeps/x86/sysdep.h, for common assembly code
    macros between i386 and x86-64.  Tested on i686 and x86-64.  There are
    no differences in outputs of "readelf -a" and "objdump -dw" on all glibc
    shared objects before and after the patch.
    
    	* sysdeps/i386/sysdep.h: Include <sysdeps/x86/sysdep.h> instead
    	of <sysdeps/generic/sysdep.h>.
    	(ALIGNARG): Removed.
    	(ASM_SIZE_DIRECTIVE): Likewise.
    	(ENTRY): Likewise.
    	(END): Likewise.
    	(ENTRY_CHK): Likewise.
    	(END_CHK): Likewise.
    	(syscall_error): Likewise.
    	(mcount): Likewise.
    	(PSEUDO_END): Likewise.
    	(L): Likewise.
    	(atom_text_section): Likewise.
    	* sysdeps/x86/sysdep.h: New file.
    	* sysdeps/x86_64/sysdep.h: Include <sysdeps/x86/sysdep.h> instead
    	of <sysdeps/generic/sysdep.h>.
    	(ALIGNARG): Removed.
    	(ASM_SIZE_DIRECTIVE): Likewise.
    	(ENTRY): Likewise.
    	(END): Likewise.
    	(ENTRY_CHK): Likewise.
    	(END_CHK): Likewise.
    	(syscall_error): Likewise.
    	(mcount): Likewise.
    	(PSEUDO_END): Likewise.
    	(L): Likewise.
    	(atom_text_section): Likewise.

diff --git a/ChangeLog b/ChangeLog
index 6608b1b..d38060b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,33 @@
+2017-11-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* sysdeps/i386/sysdep.h: Include <sysdeps/x86/sysdep.h> instead
+	of <sysdeps/generic/sysdep.h>.
+	(ALIGNARG): Removed.
+	(ASM_SIZE_DIRECTIVE): Likewise.
+	(ENTRY): Likewise.
+	(END): Likewise.
+	(ENTRY_CHK): Likewise.
+	(END_CHK): Likewise.
+	(syscall_error): Likewise.
+	(mcount): Likewise.
+	(PSEUDO_END): Likewise.
+	(L): Likewise.
+	(atom_text_section): Likewise.
+	* sysdeps/x86/sysdep.h: New file.
+	* sysdeps/x86_64/sysdep.h: Include <sysdeps/x86/sysdep.h> instead
+	of <sysdeps/generic/sysdep.h>.
+	(ALIGNARG): Removed.
+	(ASM_SIZE_DIRECTIVE): Likewise.
+	(ENTRY): Likewise.
+	(END): Likewise.
+	(ENTRY_CHK): Likewise.
+	(END_CHK): Likewise.
+	(syscall_error): Likewise.
+	(mcount): Likewise.
+	(PSEUDO_END): Likewise.
+	(L): Likewise.
+	(atom_text_section): Likewise.
+
 2017-10-31  Rafal Luzynski  <digitalfreak@lingonborough.com>
 
 	* localedata/unicode-gen/gen_unicode_ctype.py (output_head):
diff --git a/sysdeps/i386/sysdep.h b/sysdeps/i386/sysdep.h
index d2b0860..5cd7f25 100644
--- a/sysdeps/i386/sysdep.h
+++ b/sysdeps/i386/sysdep.h
@@ -16,7 +16,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
-#include <sysdeps/generic/sysdep.h>
+#include <sysdeps/x86/sysdep.h>
 
 #include <features.h> /* For __GNUC_PREREQ.  */
 
@@ -39,32 +39,6 @@
 
 /* Syntactic details of assembler.  */
 
-/* ELF uses byte-counts for .align, most others use log2 of count of bytes.  */
-#define ALIGNARG(log2) 1<<log2
-#define ASM_SIZE_DIRECTIVE(name) .size name,.-name;
-
-
-/* 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)							      \
-  .globl C_SYMBOL_NAME(name);						      \
-  .type C_SYMBOL_NAME(name),@function;					      \
-  .align ALIGNARG(4);							      \
-  C_LABEL(name)								      \
-  cfi_startproc;							      \
-  CALL_MCOUNT
-
-#undef	END
-#define END(name)							      \
-  cfi_endproc;								      \
-  ASM_SIZE_DIRECTIVE(name)
-
-#define ENTRY_CHK(name) ENTRY (name)
-#define END_CHK(name) END (name)
-
 /* If compiled for profiling, call `mcount' at the start of each function.  */
 #ifdef	PROF
 /* The mcount code relies on a normal frame pointer being on the stack
@@ -77,12 +51,6 @@
 #define CALL_MCOUNT		/* Do nothing.  */
 #endif
 
-/* Since C identifiers are not normally prefixed with an underscore
-   on this system, the asm identifier `syscall_error' intrudes on the
-   C name space.  Make sure we use an innocuous name.  */
-#define	syscall_error	__syscall_error
-#define mcount		_mcount
-
 #define	PSEUDO(name, syscall_name, args)				      \
   .globl syscall_error;							      \
 lose: SYSCALL_PIC_SETUP							      \
@@ -91,10 +59,6 @@ lose: SYSCALL_PIC_SETUP							      \
   DO_CALL (syscall_name, args);						      \
   jb lose
 
-#undef	PSEUDO_END
-#define	PSEUDO_END(name)						      \
-  END (name)
-
 # define SETUP_PIC_REG(reg) \
   .ifndef GET_PC_THUNK(reg);						      \
   .section .gnu.linkonce.t.GET_PC_THUNK(reg),"ax",@progbits;		      \
@@ -129,13 +93,6 @@ GET_PC_THUNK(reg):							      \
 #define SYSCALL_PIC_SETUP	/* Nothing.  */
 #endif
 
-/* Local label name for asm code. */
-#ifndef L
-#define L(name)		.L##name
-#endif
-
-#define atom_text_section .section ".text.atom", "ax"
-
 #else /* __ASSEMBLER__ */
 
 # define SETUP_PIC_REG_STR(reg)						\
diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
new file mode 100644
index 0000000..eb25e4b
--- /dev/null
+++ b/sysdeps/x86/sysdep.h
@@ -0,0 +1,69 @@
+/* Assembler macros for x86.
+   Copyright (C) 2017 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, see
+   <http://www.gnu.org/licenses/>.  */
+
+#ifndef _X86_SYSDEP_H
+#define _X86_SYSDEP_H 1
+
+#include <sysdeps/generic/sysdep.h>
+
+#ifdef	__ASSEMBLER__
+
+/* Syntactic details of assembler.  */
+
+/* ELF uses byte-counts for .align, most others use log2 of count of bytes.  */
+#define ALIGNARG(log2) 1<<log2
+#define ASM_SIZE_DIRECTIVE(name) .size name,.-name;
+
+/* Define an entry point visible from C.  */
+#define	ENTRY(name)							      \
+  .globl C_SYMBOL_NAME(name);						      \
+  .type C_SYMBOL_NAME(name),@function;					      \
+  .align ALIGNARG(4);							      \
+  C_LABEL(name)								      \
+  cfi_startproc;							      \
+  CALL_MCOUNT
+
+#undef	END
+#define END(name)							      \
+  cfi_endproc;								      \
+  ASM_SIZE_DIRECTIVE(name)
+
+#define ENTRY_CHK(name) ENTRY (name)
+#define END_CHK(name) END (name)
+
+/* Since C identifiers are not normally prefixed with an underscore
+   on this system, the asm identifier `syscall_error' intrudes on the
+   C name space.  Make sure we use an innocuous name.  */
+#define	syscall_error	__syscall_error
+#define mcount		_mcount
+
+#undef	PSEUDO_END
+#define	PSEUDO_END(name)						      \
+  END (name)
+
+/* Local label name for asm code. */
+#ifndef L
+/* ELF-like local names start with `.L'.  */
+# define L(name)	.L##name
+#endif
+
+#define atom_text_section .section ".text.atom", "ax"
+
+#endif	/* __ASSEMBLER__ */
+
+#endif	/* _X86_SYSDEP_H */
diff --git a/sysdeps/x86_64/sysdep.h b/sysdeps/x86_64/sysdep.h
index 1c52544..4b85475 100644
--- a/sysdeps/x86_64/sysdep.h
+++ b/sysdeps/x86_64/sysdep.h
@@ -19,7 +19,7 @@
 #ifndef _X86_64_SYSDEP_H
 #define _X86_64_SYSDEP_H 1
 
-#include <sysdeps/generic/sysdep.h>
+#include <sysdeps/x86/sysdep.h>
 
 #ifdef	__ASSEMBLER__
 
@@ -32,28 +32,6 @@
 #define cfi_offset_rel_rsp(regn, off)	.cfi_escape 0x10, regn, 0x4, 0x13, \
 					0x77, off & 0x7F | 0x80, off >> 7
 
-/* ELF uses byte-counts for .align, most others use log2 of count of bytes.  */
-#define ALIGNARG(log2) 1<<log2
-#define ASM_SIZE_DIRECTIVE(name) .size name,.-name;
-
-
-/* Define an entry point visible from C.  */
-#define	ENTRY(name)							      \
-  .globl C_SYMBOL_NAME(name);						      \
-  .type C_SYMBOL_NAME(name),@function;					      \
-  .align ALIGNARG(4);							      \
-  C_LABEL(name)								      \
-  cfi_startproc;							      \
-  CALL_MCOUNT
-
-#undef	END
-#define END(name)							      \
-  cfi_endproc;								      \
-  ASM_SIZE_DIRECTIVE(name)
-
-#define ENTRY_CHK(name) ENTRY (name)
-#define END_CHK(name) END (name)
-
 /* If compiled for profiling, call `mcount' at the start of each function.  */
 #ifdef	PROF
 /* The mcount code relies on a normal frame pointer being on the stack
@@ -70,12 +48,6 @@
 #define CALL_MCOUNT		/* Do nothing.  */
 #endif
 
-/* Since C identifiers are not normally prefixed with an underscore
-   on this system, the asm identifier `syscall_error' intrudes on the
-   C name space.  Make sure we use an innocuous name.  */
-#define	syscall_error	__syscall_error
-#define mcount		_mcount
-
 #define	PSEUDO(name, syscall_name, args)				      \
 lose:									      \
   jmp JUMPTARGET(syscall_error)						      \
@@ -84,10 +56,6 @@ lose:									      \
   DO_CALL (syscall_name, args);						      \
   jb lose
 
-#undef	PSEUDO_END
-#define	PSEUDO_END(name)						      \
-  END (name)
-
 #undef JUMPTARGET
 #ifdef SHARED
 # ifdef BIND_NOW
@@ -100,14 +68,6 @@ lose:									      \
 # define JUMPTARGET(name)	name
 #endif
 
-/* Local label name for asm code. */
-#ifndef L
-/* ELF-like local names start with `.L'.  */
-# define L(name)	.L##name
-#endif
-
-#define atom_text_section .section ".text.atom", "ax"
-
 /* Long and pointer size in bytes.  */
 #define LP_SIZE	8
 

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                    |   30 +++++++++++++++++++++
 sysdeps/i386/sysdep.h        |   45 +------------------------------
 sysdeps/{sh => x86}/sysdep.h |   60 +++++++++++++++++++-----------------------
 sysdeps/x86_64/sysdep.h      |   42 +----------------------------
 4 files changed, 59 insertions(+), 118 deletions(-)
 copy sysdeps/{sh => x86}/sysdep.h (65%)


hooks/post-receive
-- 
GNU C Library master sources


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