From patchwork Sun Feb 11 16:35:55 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zack Weinberg X-Patchwork-Id: 871782 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=sourceware.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=libc-alpha-return-90227-incoming=patchwork.ozlabs.org@sourceware.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.b="D62XuGFp"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zfZFH6snRz9t6N for ; Mon, 12 Feb 2018 03:36:35 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; q=dns; s= default; b=eQKe1s2Ya+ryDi++LcU+q84J1UfhjFvXW9u8mhXtcm0U9C+Is8gOX 4egkTvfPNTf6aX4MlQ5B4XGl5NYq7QfpntW1Fnj1wNhL+eo+n51Bs5khuZ9QlYR7 NKQR9laVAFxzGz3KwYlG/bL6LKbJzCSFqrE5I5JlRB3RF1dweNfvL0= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; s=default; bh=CREq3J/P0y67LC4w8JgszeCOPtg=; b=D62XuGFpV3kX6VzosaJB+bGpTR1Z Vpv8Bk09900SAyAclKEOHhu+AdCMB/bqQ365WnV4HTpSncG+/qzqixVZUNJ7u23C YZWN7p5ZQxwlWVcuR0sYsreLDHmUVqjlaFhCN7jRr6ZsYWUDB8y3+yRT+MbSDkrY iRROn4QrtZ7djGs= Received: (qmail 43281 invoked by alias); 11 Feb 2018 16:36:05 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 43040 invoked by uid 89); 11 Feb 2018 16:36:03 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.8 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, SPF_PASS, T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=22523, HContent-Transfer-Encoding:8bit X-HELO: mailbackend.panix.com From: Zack Weinberg To: libc-alpha@sourceware.org Cc: fweimer@redhat.com, adhemerval.zanella@linaro.org Subject: [PATCH 3/6] Remove legacy configuration knobs from libio. Date: Sun, 11 Feb 2018 11:35:55 -0500 Message-Id: <20180211163558.14124-4-zackw@panix.com> In-Reply-To: <20180211163558.14124-1-zackw@panix.com> References: <20180211163558.14124-1-zackw@panix.com> MIME-Version: 1.0 This patch eliminates the "compatibility defines" _IO_UNIFIED_JUMPTABLES (always defined to 1, used in a number of #ifs which are therefore always false), _STDIO_USES_IOSTREAM (unused), __HAVE_COLUMN (unused), _IO_BE (replaced with __glibc_unlikely), and yet another redundant definition of EOF. * libio/libio.h (_IO_UNIFIED_JUMPTABLES, _STDIO_USES_IOSTREAM) (__HAVE_COLUMN, _IO_BE): Don't define. (_IO_peekc_unlocked, _IO_getwc_unlocked, _IO_putwc_unlocked) (_IO_fwide_maybe_incompatible): Use __glibc_unlikely. * libio/libioP.h (EOF): Don't define. * libio/iofdopen.c, libio/iofopen.c, libio/iopopen.c * libio/iovdprintf.c, libio/oldiofdopen.c, libio/oldiofopen.c * libio/oldiopopen.c, debug/vdprintf_chk.c: Remove #if block testing _IO_UNIFIED_JUMPTABLES. Reviewed-by: Adhemerval Zanella --- debug/vdprintf_chk.c | 3 --- libio/iofdopen.c | 3 --- libio/iofopen.c | 3 --- libio/iopopen.c | 3 --- libio/iovdprintf.c | 3 --- libio/libio.h | 36 ++++++++++++++---------------------- libio/libioP.h | 4 ---- libio/oldiofdopen.c | 3 --- libio/oldiofopen.c | 3 --- libio/oldiopopen.c | 3 --- 10 files changed, 14 insertions(+), 50 deletions(-) diff --git a/debug/vdprintf_chk.c b/debug/vdprintf_chk.c index c195a7951e0..bc713b49628 100644 --- a/debug/vdprintf_chk.c +++ b/debug/vdprintf_chk.c @@ -40,9 +40,6 @@ __vdprintf_chk (int d, int flags, const char *format, va_list arg) _IO_no_init (&tmpfil.file, _IO_USER_LOCK, 0, &wd, &_IO_wfile_jumps); _IO_JUMPS (&tmpfil) = &_IO_file_jumps; _IO_new_file_init_internal (&tmpfil); -#if !_IO_UNIFIED_JUMPTABLES - tmpfil.vtable = NULL; -#endif if (_IO_file_attach (&tmpfil.file, d) == NULL) { _IO_un_link (&tmpfil); diff --git a/libio/iofdopen.c b/libio/iofdopen.c index 39617365f53..21a53e30f6c 100644 --- a/libio/iofdopen.c +++ b/libio/iofdopen.c @@ -137,9 +137,6 @@ _IO_new_fdopen (int fd, const char *mode) #endif &_IO_file_jumps; _IO_new_file_init_internal (&new_f->fp); -#if !_IO_UNIFIED_JUMPTABLES - new_f->fp.vtable = NULL; -#endif /* We only need to record the fd because _IO_file_init_internal will have unset the offset. It is important to unset the cached offset because the real offset in the file could change between diff --git a/libio/iofopen.c b/libio/iofopen.c index f17ec914579..ed3e8b853c6 100644 --- a/libio/iofopen.c +++ b/libio/iofopen.c @@ -72,9 +72,6 @@ __fopen_internal (const char *filename, const char *mode, int is32) _IO_no_init (&new_f->fp.file, 0, 0, &new_f->wd, &_IO_wfile_jumps); _IO_JUMPS (&new_f->fp) = &_IO_file_jumps; _IO_new_file_init_internal (&new_f->fp); -#if !_IO_UNIFIED_JUMPTABLES - new_f->fp.vtable = NULL; -#endif if (_IO_file_fopen ((FILE *) new_f, filename, mode, is32) != NULL) return __fopen_maybe_mmap (&new_f->fp.file); diff --git a/libio/iopopen.c b/libio/iopopen.c index efdd0a6f586..2eff45b4c80 100644 --- a/libio/iopopen.c +++ b/libio/iopopen.c @@ -200,9 +200,6 @@ _IO_new_popen (const char *command, const char *mode) _IO_init_internal (fp, 0); _IO_JUMPS (&new_f->fpx.file) = &_IO_proc_jumps; _IO_new_file_init_internal (&new_f->fpx.file); -#if !_IO_UNIFIED_JUMPTABLES - new_f->fpx.file.vtable = NULL; -#endif if (_IO_new_proc_open (fp, command, mode) != NULL) return (FILE *) &new_f->fpx.file; _IO_un_link (&new_f->fpx.file); diff --git a/libio/iovdprintf.c b/libio/iovdprintf.c index 78df2fe559b..78a3a2bd159 100644 --- a/libio/iovdprintf.c +++ b/libio/iovdprintf.c @@ -40,9 +40,6 @@ _IO_vdprintf (int d, const char *format, va_list arg) _IO_no_init (&tmpfil.file, _IO_USER_LOCK, 0, &wd, &_IO_wfile_jumps); _IO_JUMPS (&tmpfil) = &_IO_file_jumps; _IO_new_file_init_internal (&tmpfil); -#if !_IO_UNIFIED_JUMPTABLES - tmpfil.vtable = NULL; -#endif if (_IO_file_attach (&tmpfil.file, d) == NULL) { _IO_un_link (&tmpfil); diff --git a/libio/libio.h b/libio/libio.h index 890b825ed86..a3c679ca666 100644 --- a/libio/libio.h +++ b/libio/libio.h @@ -61,9 +61,6 @@ typedef union #include /* compatibility defines */ -#define _STDIO_USES_IOSTREAM -#define _IO_UNIFIED_JUMPTABLES 1 -#define __HAVE_COLUMN #define _IO_file_flags _flags /* open modes */ @@ -228,28 +225,23 @@ extern wint_t __wunderflow (FILE *); extern wint_t __wuflow (FILE *); extern wint_t __woverflow (FILE *, wint_t); -#if __GNUC__ >= 3 -# define _IO_BE(expr, res) __builtin_expect ((expr), res) -#else -# define _IO_BE(expr, res) (expr) -#endif - #define _IO_getc_unlocked(_fp) __getc_unlocked_body (_fp) -#define _IO_peekc_unlocked(_fp) \ - (_IO_BE ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end, 0) \ - && __underflow (_fp) == EOF ? EOF \ - : *(unsigned char *) (_fp)->_IO_read_ptr) +#define _IO_peekc_unlocked(_fp) \ + (__glibc_unlikely ((_fp)->_IO_read_ptr >= (_fp)->_IO_read_end) \ + && __underflow (_fp) == EOF \ + ? EOF \ + : *(unsigned char *) (_fp)->_IO_read_ptr) #define _IO_putc_unlocked(_ch, _fp) __putc_unlocked_body (_ch, _fp) -# define _IO_getwc_unlocked(_fp) \ - (_IO_BE ((_fp)->_wide_data == NULL \ - || ((_fp)->_wide_data->_IO_read_ptr \ - >= (_fp)->_wide_data->_IO_read_end), 0) \ +# define _IO_getwc_unlocked(_fp) \ + (__glibc_unlikely ((_fp)->_wide_data == NULL \ + || ((_fp)->_wide_data->_IO_read_ptr \ + >= (_fp)->_wide_data->_IO_read_end)) \ ? __wuflow (_fp) : (wint_t) *(_fp)->_wide_data->_IO_read_ptr++) -# define _IO_putwc_unlocked(_wch, _fp) \ - (_IO_BE ((_fp)->_wide_data == NULL \ - || ((_fp)->_wide_data->_IO_write_ptr \ - >= (_fp)->_wide_data->_IO_write_end), 0) \ +# define _IO_putwc_unlocked(_wch, _fp) \ + (__glibc_unlikely ((_fp)->_wide_data == NULL \ + || ((_fp)->_wide_data->_IO_write_ptr \ + >= (_fp)->_wide_data->_IO_write_end)) \ ? __woverflow (_fp, _wch) \ : (wint_t) (*(_fp)->_wide_data->_IO_write_ptr++ = (_wch))) @@ -304,7 +296,7 @@ extern int _IO_fwide (FILE *__fp, int __mode) __THROW; #if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1) # define _IO_fwide_maybe_incompatible \ - (__builtin_expect (&_IO_stdin_used == NULL, 0)) + (__glibc_unlikely (&_IO_stdin_used == NULL)) extern const int _IO_stdin_used; weak_extern (_IO_stdin_used); #else diff --git a/libio/libioP.h b/libio/libioP.h index 57fd60567c7..5064bdf69d4 100644 --- a/libio/libioP.h +++ b/libio/libioP.h @@ -690,10 +690,6 @@ extern off64_t _IO_seekoff_unlocked (FILE *, off64_t, int, int) extern off64_t _IO_seekpos_unlocked (FILE *, off64_t, int) attribute_hidden; -#ifndef EOF -# define EOF (-1) -#endif - #if _G_HAVE_MMAP # include diff --git a/libio/oldiofdopen.c b/libio/oldiofdopen.c index be670e8da4d..17930c2786f 100644 --- a/libio/oldiofdopen.c +++ b/libio/oldiofdopen.c @@ -102,9 +102,6 @@ _IO_old_fdopen (int fd, const char *mode) _IO_old_init (&new_f->fp.file._file, 0); _IO_JUMPS_FILE_plus (&new_f->fp) = &_IO_old_file_jumps; _IO_old_file_init_internal ((struct _IO_FILE_plus *) &new_f->fp); -#if !_IO_UNIFIED_JUMPTABLES - new_f->fp.vtable = NULL; -#endif if (_IO_old_file_attach (&new_f->fp.file._file, fd) == NULL) { _IO_un_link ((struct _IO_FILE_plus *) &new_f->fp); diff --git a/libio/oldiofopen.c b/libio/oldiofopen.c index f4ead0c1299..f0a67104fb0 100644 --- a/libio/oldiofopen.c +++ b/libio/oldiofopen.c @@ -52,9 +52,6 @@ _IO_old_fopen (const char *filename, const char *mode) _IO_old_init (&new_f->fp.file._file, 0); _IO_JUMPS_FILE_plus (&new_f->fp) = &_IO_old_file_jumps; _IO_old_file_init_internal ((struct _IO_FILE_plus *) &new_f->fp); -#if !_IO_UNIFIED_JUMPTABLES - new_f->fp.vtable = NULL; -#endif if (_IO_old_file_fopen ((FILE *) &new_f->fp, filename, mode) != NULL) return (FILE *) &new_f->fp; _IO_un_link ((struct _IO_FILE_plus *) &new_f->fp); diff --git a/libio/oldiopopen.c b/libio/oldiopopen.c index 42cab4e8f77..e47965db0ac 100644 --- a/libio/oldiopopen.c +++ b/libio/oldiopopen.c @@ -157,9 +157,6 @@ _IO_old_popen (const char *command, const char *mode) _IO_old_init (fp, 0); _IO_JUMPS_FILE_plus (&new_f->fpx.file) = &_IO_old_proc_jumps; _IO_old_file_init_internal ((struct _IO_FILE_plus *) &new_f->fpx.file); -#if !_IO_UNIFIED_JUMPTABLES - new_f->fpx.file.vtable = NULL; -#endif if (_IO_old_proc_open (fp, command, mode) != NULL) return fp; _IO_un_link ((struct _IO_FILE_plus *) &new_f->fpx.file);