This is the mail archive of the glibc-bugs@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]

[Bug libc/15105] Extra PLT references with -Os


https://sourceware.org/bugzilla/show_bug.cgi?id=15105

--- Comment #9 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
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  499b315324519f8deb5b42a143a76319934a3ab0 (commit)
      from  7fc03cf320f9ed0178babbb33de0550d393b8886 (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 -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=499b315324519f8deb5b42a143a76319934a3ab0

commit 499b315324519f8deb5b42a143a76319934a3ab0
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Thu Feb 15 20:58:16 2018 +0000

    Use libc_hidden_* for fputs (bug 15105).

    Among other localplt test failures when building with -Os, there are
    libc.so PLT references for fputs.  fputs calls normally get redirected
    to _IO_fputs by a macro in include/stdio.h (and _IO_fputs in turn uses
    libc_hidden_proto), but GCC can convert an fprintf call with a
    constant string argument into an fputs call, which of course is then
    unaffected by the macro redirection.  (I don't know why this issue
    only appears with -Os.)

    This patch duly adds a use of libc_hidden_proto for fputs.  I see no
    obvious reason why the fputs macro redirection is needed at all, but
    this patch does not change it.

    Tested for x86_64 (both that it removes this particular localplt
    failure for -Os - but other such failures remain so the bug can't yet
    be closed - and that the testsuite continues to pass without -Os).

        [BZ #15105]
        * include/stdio.h [!_ISOMAC && IS_IN (libc)] (fputs): Use
        libc_hidden_proto.
        * libio/iofputs.c (fputs): Use libc_hidden_weak.

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

Summary of changes:
 ChangeLog       |    5 +++++
 include/stdio.h |    4 ++++
 libio/iofputs.c |    1 +
 3 files changed, 10 insertions(+), 0 deletions(-)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

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