From: Hongtao Liu <crazylht@gmail.com>
To: Jakub Jelinek <jakub@redhat.com>
Cc: Uros Bizjak <ubizjak@gmail.com>,
Richard Biener <rguenther@suse.de>,
Iain Sandoe <idsandoe@googlemail.com>,
GCC Patches <gcc-patches@gcc.gnu.org>,
liuhongt <hongtao.liu@intel.com>,
Joseph Myers <joseph@codesourcery.com>
Subject: Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
Date: Wed, 8 Sep 2021 10:37:17 +0800 [thread overview]
Message-ID: <CAMZc-bzuagMF+eZiPXMmsMJQ8SEa=AgTF3myJqj_JyP7DdKiDA@mail.gmail.com> (raw)
In-Reply-To: <CAMZc-bwv0M4bqkxErEXTNF5k7cSerFT4Q2hOV2o5eb-nzaOraw@mail.gmail.com>
On Wed, Sep 8, 2021 at 8:54 AM Hongtao Liu <crazylht@gmail.com> wrote:
>
> On Tue, Sep 7, 2021 at 8:29 PM Jakub Jelinek via Gcc-patches
> <gcc-patches@gcc.gnu.org> wrote:
> >
> > On Mon, Sep 06, 2021 at 10:58:53AM +0200, Jakub Jelinek via Gcc-patches wrote:
> > > On Mon, Sep 06, 2021 at 08:49:27AM +0100, Iain Sandoe wrote:
> > > > > Ok. The *.ver changes are still needed (see above), but that can be done
> > > > > incrementally.
> > > >
> > > > I can commit the .ver change if that’s approved, sure - for the record I haven’t checked
> > > > any targets other than Darwin and Linux.
> > >
> > > The following patch exports it for Linux from config/i386/*.ver where it
> > > IMNSHO belongs, aarch64 already exports some of those at GCC_11* and other
> > > targets might add them at completely different gcc versions.
> > >
> > > Tested on x86_64-linux, verified the right symbols are exported, ok for trunk?
> >
> > Bootstrapped/regtested on x86_64-linux and i686-linux successfully, though
> > actually __divhc3 and __mulhc3 aren't exported, they aren't even compiled
> > into libgcc_s.so.1. Is that on purpose (large functions very unlikely being
> > used in most of the programs)? If yes, I'll drop the __divhc3/__mulhc3
> > lines. If not,
> > LIB2ADD_ST += $(addprefix $(srcdir)/config/i386/, $(libgcc2-hf-extras))
> > should be changed to
> > LIB2ADD += $(addprefix $(srcdir)/config/i386/, $(libgcc2-hf-extras))
> > (untested), or even the LIB2FUNCS_EXCLUDE dropped?
I was worried w/o this, there would be a duplicate definition error,
but it's not, so removed.
> >
> I think it's not, let me try to verify it.
> > > 2021-09-06 Jakub Jelinek <jakub@redhat.com>
> > > Iain Sandoe <iain@sandoe.co.uk>
> > >
> > > * config/i386/libgcc-glibc.ver: Add %inherit GCC_12.0.0 GCC_7.0.0
> > > and export *hf* and *hc* functions at GCC_12.0.0.
> > >
> > > --- libgcc/config/i386/libgcc-glibc.ver.jj 2021-01-05 00:13:58.142298913 +0100
> > > +++ libgcc/config/i386/libgcc-glibc.ver 2021-09-06 10:47:52.244726676 +0200
> > > @@ -194,3 +194,23 @@ GCC_4.8.0 {
> > > __cpu_indicator_init
> > > }
> > > %endif
> > > +
> > > +%inherit GCC_12.0.0 GCC_7.0.0
> > > +GCC_12.0.0 {
> > > + __divhc3
> > > + __mulhc3
> > > + __eqhf2
> > > + __nehf2
> > > + __extendhfdf2
> > > + __extendhfsf2
> > > + __extendhftf2
> > > + __extendhfxf2
> > > + __fixhfti
> > > + __fixunshfti
> > > + __floattihf
> > > + __floatuntihf
> > > + __truncdfhf2
> > > + __truncsfhf2
> > > + __trunctfhf2
> > > + __truncxfhf2
> > > +}
> >
> > Jakub
> >
>
>
> --
> BR,
> Hongtao
Bootstrapped and regtested on x86_64-linux-gnu{-m32,}.
Ok for trunk?
libgcc/ChangeLog:
* config/i386/t-softfp: Compile __{mul,div}hc3 into
libgcc_s.so.1.
---
libgcc/config/i386/t-softfp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/libgcc/config/i386/t-softfp b/libgcc/config/i386/t-softfp
index 2363ea17194..7620cc0cec5 100644
--- a/libgcc/config/i386/t-softfp
+++ b/libgcc/config/i386/t-softfp
@@ -2,9 +2,8 @@ LIB2ADD += $(srcdir)/config/i386/sfp-exceptions.c
# Replace _divhc3 and _mulhc3.
libgcc2-hf-functions = _divhc3 _mulhc3
-LIB2FUNCS_EXCLUDE += $(libgcc2-hf-functions)
libgcc2-hf-extras = $(addsuffix .c, $(libgcc2-hf-functions))
-LIB2ADD_ST += $(addprefix $(srcdir)/config/i386/, $(libgcc2-hf-extras))
+LIB2ADD += $(addprefix $(srcdir)/config/i386/, $(libgcc2-hf-extras))
softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
--
2.27.0
--
BR,
Hongtao
next prev parent reply other threads:[~2021-09-08 2:31 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-03 7:41 [PATCH] Explicitly add -msse2 to compile HF related libgcc source file liuhongt
2021-09-03 9:00 ` Jakub Jelinek
2021-09-03 12:32 ` Iain Sandoe
2021-09-03 12:33 ` Jakub Jelinek
2021-09-03 12:36 ` Iain Sandoe
2021-09-06 8:01 ` Jakub Jelinek
2021-09-06 1:42 ` Hongtao Liu
2021-09-06 7:08 ` Jakub Jelinek
2021-09-06 7:49 ` Iain Sandoe
2021-09-06 8:58 ` [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1 Jakub Jelinek
2021-09-07 12:28 ` Jakub Jelinek
2021-09-08 0:54 ` Hongtao Liu
2021-09-08 2:37 ` Hongtao Liu [this message]
2021-09-08 9:09 ` Jakub Jelinek
2021-09-08 9:31 ` Hongtao Liu
2021-09-18 19:13 ` Iain Sandoe
2021-09-19 3:49 ` Hongtao Liu
2021-09-06 1:43 ` [PATCH] Explicitly add -msse2 to compile HF related libgcc source file Hongtao Liu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAMZc-bzuagMF+eZiPXMmsMJQ8SEa=AgTF3myJqj_JyP7DdKiDA@mail.gmail.com' \
--to=crazylht@gmail.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=hongtao.liu@intel.com \
--cc=idsandoe@googlemail.com \
--cc=jakub@redhat.com \
--cc=joseph@codesourcery.com \
--cc=rguenther@suse.de \
--cc=ubizjak@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).