This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Remove _G_off64_t and _G_stat64 from _G_config.h
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: <libc-alpha at sourceware dot org>
- Date: Tue, 9 Oct 2012 00:26:18 +0000
- Subject: Remove _G_off64_t and _G_stat64 from _G_config.h
Both versions of _G_config.h define _G_off64_t to __off64_t, and
_G_stat64 (a struct tag) to stat64. Both those underlying types are
actually used generically within glibc, and there is no need for this
level of indirection, which this patch removes.
Tested x86_64 that the code generated for glibc's shared libraries is
identical before and after the patch.
2012-10-09 Joseph Myers <joseph@codesourcery.com>
* sysdeps/generic/_G_config.h (_G_off64_t): Remove.
(_G_stat64): Likewise.
* sysdeps/unix/sysv/linux/_G_config.h (_G_off64_t): Remove.
(_G_stat64): Likewise.
* libio/filedoalloc.c (_IO_file_doallocate): Use struct stat64
instead of struct _G_stat64.
* libio/fileops.c (mmap_remap_check): Likewise.
(decide_maybe_mmap): Likewise.
(_IO_new_file_seekoff): Likewise.
(_IO_file_stat): Likewise.
* libio/libio.h (_IO_off64_t): Define to __off64_t, not
_G_off64_t.
* libio/oldfileops.c (_IO_old_file_seekoff): Use struct stat64
instead of struct _G_stat64.
* libio/wfileops.c (_IO_wfile_seekoff): Likewise.
diff --git a/libio/filedoalloc.c b/libio/filedoalloc.c
index b7733c7..c9b0f01 100644
--- a/libio/filedoalloc.c
+++ b/libio/filedoalloc.c
@@ -96,7 +96,7 @@ _IO_file_doallocate (fp)
{
_IO_size_t size;
char *p;
- struct _G_stat64 st;
+ struct stat64 st;
#ifndef _LIBC
/* If _IO_cleanup_registration_needed is non-zero, we should call the
diff --git a/libio/fileops.c b/libio/fileops.c
index 173091c..5367ea9 100644
--- a/libio/fileops.c
+++ b/libio/fileops.c
@@ -635,7 +635,7 @@ libc_hidden_ver (_IO_new_file_underflow, _IO_file_underflow)
static int
mmap_remap_check (_IO_FILE *fp)
{
- struct _G_stat64 st;
+ struct stat64 st;
if (_IO_SYSSTAT (fp, &st) == 0
&& S_ISREG (st.st_mode) && st.st_size != 0
@@ -763,7 +763,7 @@ decide_maybe_mmap (_IO_FILE *fp)
file descriptors are for mmap-able objects and on 32-bit
machines we don't want to map files which are too large since
this would require too much virtual memory. */
- struct _G_stat64 st;
+ struct stat64 st;
if (_IO_SYSSTAT (fp, &st) == 0
&& S_ISREG (st.st_mode) && st.st_size != 0
@@ -1049,7 +1049,7 @@ _IO_new_file_seekoff (fp, offset, dir, mode)
break;
case _IO_seek_end:
{
- struct _G_stat64 st;
+ struct stat64 st;
if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode))
{
offset += st.st_size;
@@ -1250,7 +1250,7 @@ _IO_file_stat (fp, st)
void *st;
{
#ifdef _G_FSTAT64
- return _G_FSTAT64 (fp->_fileno, (struct _G_stat64 *) st);
+ return _G_FSTAT64 (fp->_fileno, (struct stat64 *) st);
#else
return fstat (fp->_fileno, (struct stat *) st);
#endif
diff --git a/libio/libio.h b/libio/libio.h
index f093a93..45f4707 100644
--- a/libio/libio.h
+++ b/libio/libio.h
@@ -37,7 +37,7 @@
#define _IO_size_t size_t
#define _IO_ssize_t __ssize_t
#define _IO_off_t __off_t
-#define _IO_off64_t _G_off64_t
+#define _IO_off64_t __off64_t
#define _IO_pid_t __pid_t
#define _IO_uid_t __uid_t
#define _IO_iconv_t _G_iconv_t
diff --git a/libio/oldfileops.c b/libio/oldfileops.c
index 8fda048..aa4e3f5 100644
--- a/libio/oldfileops.c
+++ b/libio/oldfileops.c
@@ -530,7 +530,7 @@ _IO_old_file_seekoff (fp, offset, dir, mode)
break;
case _IO_seek_end:
{
- struct _G_stat64 st;
+ struct stat64 st;
if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode))
{
offset += st.st_size;
diff --git a/libio/wfileops.c b/libio/wfileops.c
index 1087e8d..44b1236 100644
--- a/libio/wfileops.c
+++ b/libio/wfileops.c
@@ -787,7 +787,7 @@ _IO_wfile_seekoff (fp, offset, dir, mode)
break;
case _IO_seek_end:
{
- struct _G_stat64 st;
+ struct stat64 st;
if (_IO_SYSSTAT (fp, &st) == 0 && S_ISREG (st.st_mode))
{
offset += st.st_size;
diff --git a/sysdeps/generic/_G_config.h b/sysdeps/generic/_G_config.h
index b3a7db7..e4f2767 100644
--- a/sysdeps/generic/_G_config.h
+++ b/sysdeps/generic/_G_config.h
@@ -28,8 +28,6 @@ typedef struct
__off64_t __pos;
__mbstate_t __state;
} _G_fpos64_t;
-#define _G_off64_t __off64_t
-#define _G_stat64 stat64
#if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
# include <gconv.h>
typedef union
diff --git a/sysdeps/unix/sysv/linux/_G_config.h b/sysdeps/unix/sysv/linux/_G_config.h
index 4d3ae36..ec2e333 100644
--- a/sysdeps/unix/sysv/linux/_G_config.h
+++ b/sysdeps/unix/sysv/linux/_G_config.h
@@ -28,8 +28,6 @@ typedef struct
__off64_t __pos;
__mbstate_t __state;
} _G_fpos64_t;
-#define _G_off64_t __off64_t
-#define _G_stat64 stat64
#if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
# include <gconv.h>
typedef union
--
Joseph S. Myers
joseph@codesourcery.com