* [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
@ 2021-09-03 7:41 liuhongt
2021-09-03 9:00 ` Jakub Jelinek
0 siblings, 1 reply; 18+ messages in thread
From: liuhongt @ 2021-09-03 7:41 UTC (permalink / raw)
To: gcc-patches; +Cc: crazylht, hjl.tools, ubizjak, joseph
For 32-bit libgcc configure w/o sse2, there's would be an error since
GCC only support _Float16 under sse2. Explicitly add -msse2 for those
HF related libgcc functions, so users can still link them w/ the
upper configuration.
Bootstrapped and regtested on x86_64-linux-gnu{-m32,}.
Ok for trunk?
libgcc/ChangeLog:
* Makefile.in: Adjust to support specific CFLAGS for each
libgcc source file.
* config/i386/64/t-softfp: Explicitly add -msse2 for HF
related libgcc source files.
* config/i386/t-softfp: Ditto.
* config/i386/_divhc3.c: New file.
* config/i386/_mulhc3.c: New file.
---
libgcc/Makefile.in | 2 +-
libgcc/config/i386/64/t-softfp | 5 +++++
libgcc/config/i386/_divhc3.c | 4 ++++
libgcc/config/i386/_mulhc3.c | 4 ++++
libgcc/config/i386/t-softfp | 34 +++++++++++++++++++++++++++++++++-
5 files changed, 47 insertions(+), 2 deletions(-)
create mode 100644 libgcc/config/i386/_divhc3.c
create mode 100644 libgcc/config/i386/_mulhc3.c
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
index 7ec97584554..32e329f7764 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -314,7 +314,7 @@ MULTIOSSUBDIR := $(shell if test $(MULTIOSDIR) != .; then echo /$(MULTIOSDIR); f
inst_libdir = $(libsubdir)$(MULTISUBDIR)
inst_slibdir = $(slibdir)$(MULTIOSSUBDIR)
-gcc_compile_bare = $(CC) $(INTERNAL_CFLAGS)
+gcc_compile_bare = $(CC) $(INTERNAL_CFLAGS) $(CFLAGS-$(<F))
compile_deps = -MT $@ -MD -MP -MF $(basename $@).dep
gcc_compile = $(gcc_compile_bare) -o $@ $(compile_deps)
gcc_s_compile = $(gcc_compile) -DSHARED
diff --git a/libgcc/config/i386/64/t-softfp b/libgcc/config/i386/64/t-softfp
index f9d8b3a945c..e1c480efbdf 100644
--- a/libgcc/config/i386/64/t-softfp
+++ b/libgcc/config/i386/64/t-softfp
@@ -1 +1,6 @@
softfp_extras := fixhfti fixunshfti floattihf floatuntihf
+
+CFLAGS-fixhfti.c += -msse2
+CFLAGS-fixunshfti.c += -msse2
+CFLAGS-floattihf.c += -msse2
+CFLAGS-floatunstihf.c += -msse2
\ No newline at end of file
diff --git a/libgcc/config/i386/_divhc3.c b/libgcc/config/i386/_divhc3.c
new file mode 100644
index 00000000000..4cf92aa23d9
--- /dev/null
+++ b/libgcc/config/i386/_divhc3.c
@@ -0,0 +1,4 @@
+#ifdef __SSE2__
+#define L_divhc3
+#include "libgcc2.c"
+#endif
diff --git a/libgcc/config/i386/_mulhc3.c b/libgcc/config/i386/_mulhc3.c
new file mode 100644
index 00000000000..85a8a2f5fb7
--- /dev/null
+++ b/libgcc/config/i386/_mulhc3.c
@@ -0,0 +1,4 @@
+#ifdef __SSE2__
+#define L_mulhc3
+#include "libgcc2.c"
+#endif
diff --git a/libgcc/config/i386/t-softfp b/libgcc/config/i386/t-softfp
index 4ac214eb0ce..be13f10f984 100644
--- a/libgcc/config/i386/t-softfp
+++ b/libgcc/config/i386/t-softfp
@@ -1,6 +1,38 @@
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))
+
softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
-softfp_extras += eqhf2
\ No newline at end of file
+softfp_extras += eqhf2
+
+CFLAGS-extendhfsf2.c += -msse2
+CFLAGS-extendhfdf2.c += -msse2
+CFLAGS-extendhftf2.c += -msse2
+CFLAGS-extendhfxf2.c += -msse2
+
+CFLAGS-extendsfdf2.c += -msse2
+CFLAGS-extendsftf2.c += -msse2
+
+CFLAGS-extenddftf2.c += -msse2
+CFLAGS-extendxftf2.c += -msse2
+
+CFLAGS-truncsfhf2.c += -msse2
+CFLAGS-truncdfhf2.c += -msse2
+CFLAGS-truncxfhf2.c += -msse2
+CFLAGS-trunctfhf2.c += -msse2
+
+CFLAGS-truncdfsf2.c += -msse2
+CFLAGS-trunctfsf2.c += -msse2
+
+CFLAGS-trunctfdf2.c += -msse2
+CFLAGS-trunctfxf2.c += -msse2
+
+CFLAGS-eqhf2.c += -msse2
+CFLAGS-_divhc3.c += -msse2
+CFLAGS-_mulhc3.c += -msse2
\ No newline at end of file
--
2.18.1
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
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
` (2 more replies)
0 siblings, 3 replies; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-03 9:00 UTC (permalink / raw)
To: liuhongt; +Cc: gcc-patches, joseph
On Fri, Sep 03, 2021 at 03:41:13PM +0800, liuhongt via Gcc-patches wrote:
> --- a/libgcc/config/i386/64/t-softfp
> +++ b/libgcc/config/i386/64/t-softfp
> @@ -1 +1,6 @@
> softfp_extras := fixhfti fixunshfti floattihf floatuntihf
> +
> +CFLAGS-fixhfti.c += -msse2
> +CFLAGS-fixunshfti.c += -msse2
> +CFLAGS-floattihf.c += -msse2
> +CFLAGS-floatunstihf.c += -msse2
> \ No newline at end of file
Please avoid this.
> --- a/libgcc/config/i386/t-softfp
> +++ b/libgcc/config/i386/t-softfp
> @@ -1,6 +1,38 @@
> 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))
> +
> softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
> softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
>
> -softfp_extras += eqhf2
> \ No newline at end of file
> +softfp_extras += eqhf2
> +
> +CFLAGS-extendhfsf2.c += -msse2
> +CFLAGS-extendhfdf2.c += -msse2
> +CFLAGS-extendhftf2.c += -msse2
> +CFLAGS-extendhfxf2.c += -msse2
> +
> +CFLAGS-extendsfdf2.c += -msse2
> +CFLAGS-extendsftf2.c += -msse2
> +
> +CFLAGS-extenddftf2.c += -msse2
> +CFLAGS-extendxftf2.c += -msse2
Aren't the [sdxt]f<->[sdxt]f extend/trunc conversions in libgcc for
quite a while? If so, using -msse2 for those seems wrong, it is fine
if we require -msse2 support for anything that uses HF or HC mode
types, but if just trying to convert other types it should work even on
just i386 or i486.
> +
> +CFLAGS-truncsfhf2.c += -msse2
> +CFLAGS-truncdfhf2.c += -msse2
> +CFLAGS-truncxfhf2.c += -msse2
> +CFLAGS-trunctfhf2.c += -msse2
> +
> +CFLAGS-truncdfsf2.c += -msse2
> +CFLAGS-trunctfsf2.c += -msse2
> +
> +CFLAGS-trunctfdf2.c += -msse2
> +CFLAGS-trunctfxf2.c += -msse2
> +
> +CFLAGS-eqhf2.c += -msse2
> +CFLAGS-_divhc3.c += -msse2
> +CFLAGS-_mulhc3.c += -msse2
> \ No newline at end of file
See above.
Also, shouldn't the *hf* and *hc* APIs be exported from libgcc_s.so.1?
254: 0000000000011960 968 FUNC LOCAL DEFAULT 13 __floattihf
256: 00000000000116f0 315 FUNC LOCAL DEFAULT 13 __fixhfti
263: 000000000000f950 1358 FUNC LOCAL DEFAULT 13 __truncsfhf2
264: 000000000000db10 272 FUNC LOCAL DEFAULT 13 __extendhfsf2
265: 000000000000df70 399 FUNC LOCAL DEFAULT 13 __extendhfxf2
267: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __eqhf2
268: 0000000000011d30 681 FUNC LOCAL DEFAULT 13 __floatuntihf
271: 000000000000dc20 374 FUNC LOCAL DEFAULT 13 __extendhfdf2
274: 0000000000011830 292 FUNC LOCAL DEFAULT 13 __fixunshfti
281: 000000000000dda0 460 FUNC LOCAL DEFAULT 13 __extendhftf2
283: 000000000000e860 1439 FUNC LOCAL DEFAULT 13 __trunctfhf2
285: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __nehf2
286: 0000000000006290 1627 FUNC LOCAL DEFAULT 13 __divhc3
290: 000000000000ee00 1499 FUNC LOCAL DEFAULT 13 __truncxfhf2
292: 000000000000f3e0 1392 FUNC LOCAL DEFAULT 13 __truncdfhf2
296: 0000000000005150 1931 FUNC LOCAL DEFAULT 13 __mulhc3
So, don't we want GCC_12.0 with those symbols
in config/i386/libgcc-glibc.ver and perhaps others?
Jakub
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-03 9:00 ` Jakub Jelinek
@ 2021-09-03 12:32 ` Iain Sandoe
2021-09-03 12:33 ` Jakub Jelinek
2021-09-06 1:42 ` Hongtao Liu
2021-09-06 1:43 ` [PATCH] Explicitly add -msse2 to compile HF related libgcc source file Hongtao Liu
2 siblings, 1 reply; 18+ messages in thread
From: Iain Sandoe @ 2021-09-03 12:32 UTC (permalink / raw)
To: Jakub Jelinek; +Cc: liuhongt, GCC Patches, Joseph Myers
> On 3 Sep 2021, at 10:00, Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote:
>
> On Fri, Sep 03, 2021 at 03:41:13PM +0800, liuhongt via Gcc-patches wrote:
>> --- a/libgcc/config/i386/64/t-softfp
>> +++ b/libgcc/config/i386/64/t-softfp
>> @@ -1 +1,6 @@
>> softfp_extras := fixhfti fixunshfti floattihf floatuntihf
>> +
>> +CFLAGS-fixhfti.c += -msse2
>> +CFLAGS-fixunshfti.c += -msse2
>> +CFLAGS-floattihf.c += -msse2
>> +CFLAGS-floatunstihf.c += -msse2
>> \ No newline at end of file
>
> Please avoid this.
>
>> --- a/libgcc/config/i386/t-softfp
>> +++ b/libgcc/config/i386/t-softfp
>> @@ -1,6 +1,38 @@
>> 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))
>> +
>> softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
>> softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
>>
>> -softfp_extras += eqhf2
>> \ No newline at end of file
>> +softfp_extras += eqhf2
>> +
>> +CFLAGS-extendhfsf2.c += -msse2
>> +CFLAGS-extendhfdf2.c += -msse2
>> +CFLAGS-extendhftf2.c += -msse2
>> +CFLAGS-extendhfxf2.c += -msse2
>> +
>> +CFLAGS-extendsfdf2.c += -msse2
>> +CFLAGS-extendsftf2.c += -msse2
>> +
>> +CFLAGS-extenddftf2.c += -msse2
>> +CFLAGS-extendxftf2.c += -msse2
>
> Aren't the [sdxt]f<->[sdxt]f extend/trunc conversions in libgcc for
> quite a while? If so, using -msse2 for those seems wrong, it is fine
> if we require -msse2 support for anything that uses HF or HC mode
> types, but if just trying to convert other types it should work even on
> just i386 or i486.
>
>> +
>> +CFLAGS-truncsfhf2.c += -msse2
>> +CFLAGS-truncdfhf2.c += -msse2
>> +CFLAGS-truncxfhf2.c += -msse2
>> +CFLAGS-trunctfhf2.c += -msse2
>> +
>> +CFLAGS-truncdfsf2.c += -msse2
>> +CFLAGS-trunctfsf2.c += -msse2
>> +
>> +CFLAGS-trunctfdf2.c += -msse2
>> +CFLAGS-trunctfxf2.c += -msse2
>> +
>> +CFLAGS-eqhf2.c += -msse2
>> +CFLAGS-_divhc3.c += -msse2
>> +CFLAGS-_mulhc3.c += -msse2
>> \ No newline at end of file
>
> See above.
>
> Also, shouldn't the *hf* and *hc* APIs be exported from libgcc_s.so.1?
>
> 254: 0000000000011960 968 FUNC LOCAL DEFAULT 13 __floattihf
> 256: 00000000000116f0 315 FUNC LOCAL DEFAULT 13 __fixhfti
> 263: 000000000000f950 1358 FUNC LOCAL DEFAULT 13 __truncsfhf2
> 264: 000000000000db10 272 FUNC LOCAL DEFAULT 13 __extendhfsf2
> 265: 000000000000df70 399 FUNC LOCAL DEFAULT 13 __extendhfxf2
> 267: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __eqhf2
> 268: 0000000000011d30 681 FUNC LOCAL DEFAULT 13 __floatuntihf
> 271: 000000000000dc20 374 FUNC LOCAL DEFAULT 13 __extendhfdf2
> 274: 0000000000011830 292 FUNC LOCAL DEFAULT 13 __fixunshfti
> 281: 000000000000dda0 460 FUNC LOCAL DEFAULT 13 __extendhftf2
> 283: 000000000000e860 1439 FUNC LOCAL DEFAULT 13 __trunctfhf2
> 285: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __nehf2
> 286: 0000000000006290 1627 FUNC LOCAL DEFAULT 13 __divhc3
> 290: 000000000000ee00 1499 FUNC LOCAL DEFAULT 13 __truncxfhf2
> 292: 000000000000f3e0 1392 FUNC LOCAL DEFAULT 13 __truncdfhf2
> 296: 0000000000005150 1931 FUNC LOCAL DEFAULT 13 __mulhc3
>
> So, don't we want GCC_12.0 with those symbols
> in config/i386/libgcc-glibc.ver and perhaps others?
this works for me on Darwin - I didn’t try it on Linux so far though (and didn’t
look at solaris etc. which have thier own sym maps).
-------
diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
index cea33267e53..f5c1bc1aa6c 100644
--- a/libgcc/libgcc-std.ver.in
+++ b/libgcc/libgcc-std.ver.in
@@ -1944,3 +1944,21 @@ GCC_7.0.0 {
__PFX__divmoddi4
__PFX__divmodti4
}
+
+%inherit GCC_12.0.0 GCC_7.0.0
+ GCC_12.0.0 {
+ __PFX__eqhf2
+ __PFX__extendhfdf2
+ __PFX__extendhfsf2
+ __PFX__extendhftf2
+ __PFX__extendhfxf2
+ __PFX__fixhfti
+ __PFX__fixunshfti
+ __PFX__floattihf
+ __PFX__floatuntihf
+ __PFX__nehf2
+ __PFX__truncdfhf2
+ __PFX__truncsfhf2
+ __PFX__trunctfhf2
+ __PFX__truncxfhf2
+}
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-03 12:32 ` Iain Sandoe
@ 2021-09-03 12:33 ` Jakub Jelinek
2021-09-03 12:36 ` Iain Sandoe
0 siblings, 1 reply; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-03 12:33 UTC (permalink / raw)
To: Iain Sandoe; +Cc: liuhongt, GCC Patches, Joseph Myers
On Fri, Sep 03, 2021 at 01:32:14PM +0100, Iain Sandoe via Gcc-patches wrote:
> diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
> index cea33267e53..f5c1bc1aa6c 100644
> --- a/libgcc/libgcc-std.ver.in
> +++ b/libgcc/libgcc-std.ver.in
> @@ -1944,3 +1944,21 @@ GCC_7.0.0 {
> __PFX__divmoddi4
> __PFX__divmodti4
> }
> +
> +%inherit GCC_12.0.0 GCC_7.0.0
> + GCC_12.0.0 {
> + __PFX__eqhf2
> + __PFX__extendhfdf2
> + __PFX__extendhfsf2
> + __PFX__extendhftf2
> + __PFX__extendhfxf2
> + __PFX__fixhfti
> + __PFX__fixunshfti
> + __PFX__floattihf
> + __PFX__floatuntihf
> + __PFX__nehf2
> + __PFX__truncdfhf2
> + __PFX__truncsfhf2
> + __PFX__trunctfhf2
> + __PFX__truncxfhf2
> +}
No *hc* entrypoints?
Jakub
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-03 12:33 ` Jakub Jelinek
@ 2021-09-03 12:36 ` Iain Sandoe
2021-09-06 8:01 ` Jakub Jelinek
0 siblings, 1 reply; 18+ messages in thread
From: Iain Sandoe @ 2021-09-03 12:36 UTC (permalink / raw)
To: Jakub Jelinek; +Cc: liuhongt, GCC Patches, Joseph Myers
> On 3 Sep 2021, at 13:33, Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote:
>
> On Fri, Sep 03, 2021 at 01:32:14PM +0100, Iain Sandoe via Gcc-patches wrote:
>> diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
>> index cea33267e53..f5c1bc1aa6c 100644
>> --- a/libgcc/libgcc-std.ver.in
>> +++ b/libgcc/libgcc-std.ver.in
>> @@ -1944,3 +1944,21 @@ GCC_7.0.0 {
>> __PFX__divmoddi4
>> __PFX__divmodti4
>> }
>> +
>> +%inherit GCC_12.0.0 GCC_7.0.0
>> + GCC_12.0.0 {
>> + __PFX__eqhf2
>> + __PFX__extendhfdf2
>> + __PFX__extendhfsf2
>> + __PFX__extendhftf2
>> + __PFX__extendhfxf2
>> + __PFX__fixhfti
>> + __PFX__fixunshfti
>> + __PFX__floattihf
>> + __PFX__floatuntihf
>> + __PFX__nehf2
>> + __PFX__truncdfhf2
>> + __PFX__truncsfhf2
>> + __PFX__trunctfhf2
>> + __PFX__truncxfhf2
>> +}
>
> No *hc* entrypoints?
oops EWRONGPATCH
diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
index cea33267e53..902a9364850 100644
--- a/libgcc/libgcc-std.ver.in
+++ b/libgcc/libgcc-std.ver.in
@@ -1944,3 +1944,23 @@ GCC_7.0.0 {
__PFX__divmoddi4
__PFX__divmodti4
}
+
+%inherit GCC_12.0.0 GCC_7.0.0
+ GCC_12.0.0 {
+ __PFX__divhc3
+ __PFX__mulhc3
+ __PFX__eqhf2
+ __PFX__extendhfdf2
+ __PFX__extendhfsf2
+ __PFX__extendhftf2
+ __PFX__extendhfxf2
+ __PFX__fixhfti
+ __PFX__fixunshfti
+ __PFX__floattihf
+ __PFX__floatuntihf
+ __PFX__nehf2
+ __PFX__truncdfhf2
+ __PFX__truncsfhf2
+ __PFX__trunctfhf2
+ __PFX__truncxfhf2
+}
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-03 9:00 ` Jakub Jelinek
2021-09-03 12:32 ` Iain Sandoe
@ 2021-09-06 1:42 ` Hongtao Liu
2021-09-06 7:08 ` Jakub Jelinek
2021-09-06 1:43 ` [PATCH] Explicitly add -msse2 to compile HF related libgcc source file Hongtao Liu
2 siblings, 1 reply; 18+ messages in thread
From: Hongtao Liu @ 2021-09-06 1:42 UTC (permalink / raw)
To: Jakub Jelinek; +Cc: liuhongt, GCC Patches, Joseph Myers
[-- Attachment #1: Type: text/plain, Size: 3700 bytes --]
On Fri, Sep 3, 2021 at 5:01 PM Jakub Jelinek via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> On Fri, Sep 03, 2021 at 03:41:13PM +0800, liuhongt via Gcc-patches wrote:
> > --- a/libgcc/config/i386/64/t-softfp
> > +++ b/libgcc/config/i386/64/t-softfp
> > @@ -1 +1,6 @@
> > softfp_extras := fixhfti fixunshfti floattihf floatuntihf
> > +
> > +CFLAGS-fixhfti.c += -msse2
> > +CFLAGS-fixunshfti.c += -msse2
> > +CFLAGS-floattihf.c += -msse2
> > +CFLAGS-floatunstihf.c += -msse2
> > \ No newline at end of file
>
> Please avoid this.
>
Changed.
> > --- a/libgcc/config/i386/t-softfp
> > +++ b/libgcc/config/i386/t-softfp
> > @@ -1,6 +1,38 @@
> > 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))
> > +
> > softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
> > softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
> >
> > -softfp_extras += eqhf2
> > \ No newline at end of file
> > +softfp_extras += eqhf2
> > +
> > +CFLAGS-extendhfsf2.c += -msse2
> > +CFLAGS-extendhfdf2.c += -msse2
> > +CFLAGS-extendhftf2.c += -msse2
> > +CFLAGS-extendhfxf2.c += -msse2
> > +
> > +CFLAGS-extendsfdf2.c += -msse2
> > +CFLAGS-extendsftf2.c += -msse2
> > +
> > +CFLAGS-extenddftf2.c += -msse2
> > +CFLAGS-extendxftf2.c += -msse2
>
> Aren't the [sdxt]f<->[sdxt]f extend/trunc conversions in libgcc for
> quite a while? If so, using -msse2 for those seems wrong, it is fine
> if we require -msse2 support for anything that uses HF or HC mode
> types, but if just trying to convert other types it should work even on
> just i386 or i486.
Yes, removed.
>
> > +
> > +CFLAGS-truncsfhf2.c += -msse2
> > +CFLAGS-truncdfhf2.c += -msse2
> > +CFLAGS-truncxfhf2.c += -msse2
> > +CFLAGS-trunctfhf2.c += -msse2
> > +
> > +CFLAGS-truncdfsf2.c += -msse2
> > +CFLAGS-trunctfsf2.c += -msse2
> > +
> > +CFLAGS-trunctfdf2.c += -msse2
> > +CFLAGS-trunctfxf2.c += -msse2
> > +
> > +CFLAGS-eqhf2.c += -msse2
> > +CFLAGS-_divhc3.c += -msse2
> > +CFLAGS-_mulhc3.c += -msse2
> > \ No newline at end of file
>
> See above.
Changed.
>
> Also, shouldn't the *hf* and *hc* APIs be exported from libgcc_s.so.1?
>
> 254: 0000000000011960 968 FUNC LOCAL DEFAULT 13 __floattihf
> 256: 00000000000116f0 315 FUNC LOCAL DEFAULT 13 __fixhfti
> 263: 000000000000f950 1358 FUNC LOCAL DEFAULT 13 __truncsfhf2
> 264: 000000000000db10 272 FUNC LOCAL DEFAULT 13 __extendhfsf2
> 265: 000000000000df70 399 FUNC LOCAL DEFAULT 13 __extendhfxf2
> 267: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __eqhf2
> 268: 0000000000011d30 681 FUNC LOCAL DEFAULT 13 __floatuntihf
> 271: 000000000000dc20 374 FUNC LOCAL DEFAULT 13 __extendhfdf2
> 274: 0000000000011830 292 FUNC LOCAL DEFAULT 13 __fixunshfti
> 281: 000000000000dda0 460 FUNC LOCAL DEFAULT 13 __extendhftf2
> 283: 000000000000e860 1439 FUNC LOCAL DEFAULT 13 __trunctfhf2
> 285: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __nehf2
> 286: 0000000000006290 1627 FUNC LOCAL DEFAULT 13 __divhc3
> 290: 000000000000ee00 1499 FUNC LOCAL DEFAULT 13 __truncxfhf2
> 292: 000000000000f3e0 1392 FUNC LOCAL DEFAULT 13 __truncdfhf2
> 296: 0000000000005150 1931 FUNC LOCAL DEFAULT 13 __mulhc3
>
> So, don't we want GCC_12.0 with those symbols
> in config/i386/libgcc-glibc.ver and perhaps others?
>
> Jakub
>
Here is an updated patch.
--
BR,
Hongtao
[-- Attachment #2: v2-0001-Explicitly-add-msse2-to-compile-HF-related-libgcc.patch --]
[-- Type: text/x-patch, Size: 3671 bytes --]
From 6a5c7de52269b44222d8b6909827513125264dee Mon Sep 17 00:00:00 2001
From: liuhongt <hongtao.liu@intel.com>
Date: Fri, 3 Sep 2021 13:06:57 +0800
Subject: [PATCH v2] Explicitly add -msse2 to compile HF related libgcc source
file.
For 32-bit libgcc configure w/o sse2, there's would be an error since
GCC only support _Float16 under sse2. Explicitly add -msse2 for those
HF related libgcc functions, so users can still link them w/ the
upper configuration.
libgcc/ChangeLog:
* Makefile.in: Adjust to support specific CFLAGS for each
libgcc source file.
* config/i386/64/t-softfp: Explicitly add -msse2 for HF
related libgcc source files.
* config/i386/t-softfp: Ditto.
* config/i386/_divhc3.c: New file.
* config/i386/_mulhc3.c: New file.
---
libgcc/Makefile.in | 2 +-
libgcc/config/i386/64/t-softfp | 5 +++++
libgcc/config/i386/_divhc3.c | 4 ++++
libgcc/config/i386/_mulhc3.c | 4 ++++
libgcc/config/i386/t-softfp | 22 +++++++++++++++++++++-
5 files changed, 35 insertions(+), 2 deletions(-)
create mode 100644 libgcc/config/i386/_divhc3.c
create mode 100644 libgcc/config/i386/_mulhc3.c
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
index 7ec97584554..32e329f7764 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -314,7 +314,7 @@ MULTIOSSUBDIR := $(shell if test $(MULTIOSDIR) != .; then echo /$(MULTIOSDIR); f
inst_libdir = $(libsubdir)$(MULTISUBDIR)
inst_slibdir = $(slibdir)$(MULTIOSSUBDIR)
-gcc_compile_bare = $(CC) $(INTERNAL_CFLAGS)
+gcc_compile_bare = $(CC) $(INTERNAL_CFLAGS) $(CFLAGS-$(<F))
compile_deps = -MT $@ -MD -MP -MF $(basename $@).dep
gcc_compile = $(gcc_compile_bare) -o $@ $(compile_deps)
gcc_s_compile = $(gcc_compile) -DSHARED
diff --git a/libgcc/config/i386/64/t-softfp b/libgcc/config/i386/64/t-softfp
index f9d8b3a945c..3bec464d786 100644
--- a/libgcc/config/i386/64/t-softfp
+++ b/libgcc/config/i386/64/t-softfp
@@ -1 +1,6 @@
softfp_extras := fixhfti fixunshfti floattihf floatuntihf
+
+CFLAGS-fixhfti.c += -msse2
+CFLAGS-fixunshfti.c += -msse2
+CFLAGS-floattihf.c += -msse2
+CFLAGS-floatunstihf.c += -msse2
diff --git a/libgcc/config/i386/_divhc3.c b/libgcc/config/i386/_divhc3.c
new file mode 100644
index 00000000000..4cf92aa23d9
--- /dev/null
+++ b/libgcc/config/i386/_divhc3.c
@@ -0,0 +1,4 @@
+#ifdef __SSE2__
+#define L_divhc3
+#include "libgcc2.c"
+#endif
diff --git a/libgcc/config/i386/_mulhc3.c b/libgcc/config/i386/_mulhc3.c
new file mode 100644
index 00000000000..85a8a2f5fb7
--- /dev/null
+++ b/libgcc/config/i386/_mulhc3.c
@@ -0,0 +1,4 @@
+#ifdef __SSE2__
+#define L_mulhc3
+#include "libgcc2.c"
+#endif
diff --git a/libgcc/config/i386/t-softfp b/libgcc/config/i386/t-softfp
index 4ac214eb0ce..2363ea17194 100644
--- a/libgcc/config/i386/t-softfp
+++ b/libgcc/config/i386/t-softfp
@@ -1,6 +1,26 @@
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))
+
softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
-softfp_extras += eqhf2
\ No newline at end of file
+softfp_extras += eqhf2
+
+CFLAGS-extendhfsf2.c += -msse2
+CFLAGS-extendhfdf2.c += -msse2
+CFLAGS-extendhftf2.c += -msse2
+CFLAGS-extendhfxf2.c += -msse2
+
+CFLAGS-truncsfhf2.c += -msse2
+CFLAGS-truncdfhf2.c += -msse2
+CFLAGS-truncxfhf2.c += -msse2
+CFLAGS-trunctfhf2.c += -msse2
+
+CFLAGS-eqhf2.c += -msse2
+CFLAGS-_divhc3.c += -msse2
+CFLAGS-_mulhc3.c += -msse2
--
2.18.1
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-03 9:00 ` Jakub Jelinek
2021-09-03 12:32 ` Iain Sandoe
2021-09-06 1:42 ` Hongtao Liu
@ 2021-09-06 1:43 ` Hongtao Liu
2 siblings, 0 replies; 18+ messages in thread
From: Hongtao Liu @ 2021-09-06 1:43 UTC (permalink / raw)
To: Jakub Jelinek; +Cc: liuhongt, GCC Patches, Joseph Myers
On Fri, Sep 3, 2021 at 5:01 PM Jakub Jelinek via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> On Fri, Sep 03, 2021 at 03:41:13PM +0800, liuhongt via Gcc-patches wrote:
> > --- a/libgcc/config/i386/64/t-softfp
> > +++ b/libgcc/config/i386/64/t-softfp
> > @@ -1 +1,6 @@
> > softfp_extras := fixhfti fixunshfti floattihf floatuntihf
> > +
> > +CFLAGS-fixhfti.c += -msse2
> > +CFLAGS-fixunshfti.c += -msse2
> > +CFLAGS-floattihf.c += -msse2
> > +CFLAGS-floatunstihf.c += -msse2
> > \ No newline at end of file
>
> Please avoid this.
>
> > --- a/libgcc/config/i386/t-softfp
> > +++ b/libgcc/config/i386/t-softfp
> > @@ -1,6 +1,38 @@
> > 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))
> > +
> > softfp_extensions := hfsf hfdf hftf hfxf sfdf sftf dftf xftf
> > softfp_truncations := tfhf xfhf dfhf sfhf tfsf dfsf tfdf tfxf
> >
> > -softfp_extras += eqhf2
> > \ No newline at end of file
> > +softfp_extras += eqhf2
> > +
> > +CFLAGS-extendhfsf2.c += -msse2
> > +CFLAGS-extendhfdf2.c += -msse2
> > +CFLAGS-extendhftf2.c += -msse2
> > +CFLAGS-extendhfxf2.c += -msse2
> > +
> > +CFLAGS-extendsfdf2.c += -msse2
> > +CFLAGS-extendsftf2.c += -msse2
> > +
> > +CFLAGS-extenddftf2.c += -msse2
> > +CFLAGS-extendxftf2.c += -msse2
>
> Aren't the [sdxt]f<->[sdxt]f extend/trunc conversions in libgcc for
> quite a while? If so, using -msse2 for those seems wrong, it is fine
> if we require -msse2 support for anything that uses HF or HC mode
> types, but if just trying to convert other types it should work even on
> just i386 or i486.
>
> > +
> > +CFLAGS-truncsfhf2.c += -msse2
> > +CFLAGS-truncdfhf2.c += -msse2
> > +CFLAGS-truncxfhf2.c += -msse2
> > +CFLAGS-trunctfhf2.c += -msse2
> > +
> > +CFLAGS-truncdfsf2.c += -msse2
> > +CFLAGS-trunctfsf2.c += -msse2
> > +
> > +CFLAGS-trunctfdf2.c += -msse2
> > +CFLAGS-trunctfxf2.c += -msse2
> > +
> > +CFLAGS-eqhf2.c += -msse2
> > +CFLAGS-_divhc3.c += -msse2
> > +CFLAGS-_mulhc3.c += -msse2
> > \ No newline at end of file
>
> See above.
>
> Also, shouldn't the *hf* and *hc* APIs be exported from libgcc_s.so.1?
>
> 254: 0000000000011960 968 FUNC LOCAL DEFAULT 13 __floattihf
> 256: 00000000000116f0 315 FUNC LOCAL DEFAULT 13 __fixhfti
> 263: 000000000000f950 1358 FUNC LOCAL DEFAULT 13 __truncsfhf2
> 264: 000000000000db10 272 FUNC LOCAL DEFAULT 13 __extendhfsf2
> 265: 000000000000df70 399 FUNC LOCAL DEFAULT 13 __extendhfxf2
> 267: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __eqhf2
> 268: 0000000000011d30 681 FUNC LOCAL DEFAULT 13 __floatuntihf
> 271: 000000000000dc20 374 FUNC LOCAL DEFAULT 13 __extendhfdf2
> 274: 0000000000011830 292 FUNC LOCAL DEFAULT 13 __fixunshfti
> 281: 000000000000dda0 460 FUNC LOCAL DEFAULT 13 __extendhftf2
> 283: 000000000000e860 1439 FUNC LOCAL DEFAULT 13 __trunctfhf2
> 285: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __nehf2
> 286: 0000000000006290 1627 FUNC LOCAL DEFAULT 13 __divhc3
> 290: 000000000000ee00 1499 FUNC LOCAL DEFAULT 13 __truncxfhf2
> 292: 000000000000f3e0 1392 FUNC LOCAL DEFAULT 13 __truncdfhf2
> 296: 0000000000005150 1931 FUNC LOCAL DEFAULT 13 __mulhc3
>
> So, don't we want GCC_12.0 with those symbols
> in config/i386/libgcc-glibc.ver and perhaps others?
I guess Iain will check in this part.
>
> Jakub
>
--
BR,
Hongtao
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-06 1:42 ` Hongtao Liu
@ 2021-09-06 7:08 ` Jakub Jelinek
2021-09-06 7:49 ` Iain Sandoe
0 siblings, 1 reply; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-06 7:08 UTC (permalink / raw)
To: Hongtao Liu; +Cc: liuhongt, GCC Patches, Joseph Myers
On Mon, Sep 06, 2021 at 09:42:32AM +0800, Hongtao Liu wrote:
> > Also, shouldn't the *hf* and *hc* APIs be exported from libgcc_s.so.1?
> >
> > 254: 0000000000011960 968 FUNC LOCAL DEFAULT 13 __floattihf
> > 256: 00000000000116f0 315 FUNC LOCAL DEFAULT 13 __fixhfti
> > 263: 000000000000f950 1358 FUNC LOCAL DEFAULT 13 __truncsfhf2
> > 264: 000000000000db10 272 FUNC LOCAL DEFAULT 13 __extendhfsf2
> > 265: 000000000000df70 399 FUNC LOCAL DEFAULT 13 __extendhfxf2
> > 267: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __eqhf2
> > 268: 0000000000011d30 681 FUNC LOCAL DEFAULT 13 __floatuntihf
> > 271: 000000000000dc20 374 FUNC LOCAL DEFAULT 13 __extendhfdf2
> > 274: 0000000000011830 292 FUNC LOCAL DEFAULT 13 __fixunshfti
> > 281: 000000000000dda0 460 FUNC LOCAL DEFAULT 13 __extendhftf2
> > 283: 000000000000e860 1439 FUNC LOCAL DEFAULT 13 __trunctfhf2
> > 285: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __nehf2
> > 286: 0000000000006290 1627 FUNC LOCAL DEFAULT 13 __divhc3
> > 290: 000000000000ee00 1499 FUNC LOCAL DEFAULT 13 __truncxfhf2
> > 292: 000000000000f3e0 1392 FUNC LOCAL DEFAULT 13 __truncdfhf2
> > 296: 0000000000005150 1931 FUNC LOCAL DEFAULT 13 __mulhc3
> >
> > So, don't we want GCC_12.0 with those symbols
> > in config/i386/libgcc-glibc.ver and perhaps others?
> >
> > Jakub
> >
>
> Here is an updated patch.
Ok. The *.ver changes are still needed (see above), but that can be done
incrementally.
Jakub
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
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
0 siblings, 1 reply; 18+ messages in thread
From: Iain Sandoe @ 2021-09-06 7:49 UTC (permalink / raw)
To: Jakub Jelinek; +Cc: Hongtao Liu, liuhongt, GCC Patches, Joseph Myers
> On 6 Sep 2021, at 08:08, Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org> wrote:
>
> On Mon, Sep 06, 2021 at 09:42:32AM +0800, Hongtao Liu wrote:
>>> Also, shouldn't the *hf* and *hc* APIs be exported from libgcc_s.so.1?
>>>
>>> 254: 0000000000011960 968 FUNC LOCAL DEFAULT 13 __floattihf
>>> 256: 00000000000116f0 315 FUNC LOCAL DEFAULT 13 __fixhfti
>>> 263: 000000000000f950 1358 FUNC LOCAL DEFAULT 13 __truncsfhf2
>>> 264: 000000000000db10 272 FUNC LOCAL DEFAULT 13 __extendhfsf2
>>> 265: 000000000000df70 399 FUNC LOCAL DEFAULT 13 __extendhfxf2
>>> 267: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __eqhf2
>>> 268: 0000000000011d30 681 FUNC LOCAL DEFAULT 13 __floatuntihf
>>> 271: 000000000000dc20 374 FUNC LOCAL DEFAULT 13 __extendhfdf2
>>> 274: 0000000000011830 292 FUNC LOCAL DEFAULT 13 __fixunshfti
>>> 281: 000000000000dda0 460 FUNC LOCAL DEFAULT 13 __extendhftf2
>>> 283: 000000000000e860 1439 FUNC LOCAL DEFAULT 13 __trunctfhf2
>>> 285: 0000000000011fe0 469 FUNC LOCAL DEFAULT 13 __nehf2
>>> 286: 0000000000006290 1627 FUNC LOCAL DEFAULT 13 __divhc3
>>> 290: 000000000000ee00 1499 FUNC LOCAL DEFAULT 13 __truncxfhf2
>>> 292: 000000000000f3e0 1392 FUNC LOCAL DEFAULT 13 __truncdfhf2
>>> 296: 0000000000005150 1931 FUNC LOCAL DEFAULT 13 __mulhc3
>>>
>>> So, don't we want GCC_12.0 with those symbols
>>> in config/i386/libgcc-glibc.ver and perhaps others?
>>>
>>> Jakub
>>>
>>
>> Here is an updated patch.
>
> 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.
Iain
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] Explicitly add -msse2 to compile HF related libgcc source file.
2021-09-03 12:36 ` Iain Sandoe
@ 2021-09-06 8:01 ` Jakub Jelinek
0 siblings, 0 replies; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-06 8:01 UTC (permalink / raw)
To: Iain Sandoe; +Cc: liuhongt, GCC Patches, Joseph Myers
On Fri, Sep 03, 2021 at 01:36:36PM +0100, Iain Sandoe wrote:
> oops EWRONGPATCH
>
> diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
> index cea33267e53..902a9364850 100644
> --- a/libgcc/libgcc-std.ver.in
> +++ b/libgcc/libgcc-std.ver.in
> @@ -1944,3 +1944,23 @@ GCC_7.0.0 {
> __PFX__divmoddi4
> __PFX__divmodti4
> }
> +
> +%inherit GCC_12.0.0 GCC_7.0.0
> + GCC_12.0.0 {
> + __PFX__divhc3
> + __PFX__mulhc3
> + __PFX__eqhf2
> + __PFX__extendhfdf2
> + __PFX__extendhfsf2
> + __PFX__extendhftf2
> + __PFX__extendhfxf2
> + __PFX__fixhfti
> + __PFX__fixunshfti
> + __PFX__floattihf
> + __PFX__floatuntihf
> + __PFX__nehf2
> + __PFX__truncdfhf2
> + __PFX__truncsfhf2
> + __PFX__trunctfhf2
> + __PFX__truncxfhf2
> +}
>
I don't think this should be done in libgcc/libgcc-std.ver.in,
the addition of those *h[fc]* entrypoints wasn't a generic change,
but change on a particular target, other targets can add those
entrypoints in GCC 15, never etc. And while non-existent symbols
are filtered away by the scripts, if some arch adds them later, they
might show up under the GCC_12.0.0 symver instead of some other.
And e.g. aarch64 already has in config/aarch64/libgcc-softfp.ver
__divhc3
__extendhftf2
__fixhfti
__fixunshfti
__floattihf
__floatuntihf
__mulhc3
__trunctfhf2
under GCC_11.0 symver. IMHO those changes
belong to libgcc/config/i386/*.ver but that means multiple files
need changes.
Jakub
^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-06 7:49 ` Iain Sandoe
@ 2021-09-06 8:58 ` Jakub Jelinek
2021-09-07 12:28 ` Jakub Jelinek
0 siblings, 1 reply; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-06 8:58 UTC (permalink / raw)
To: Uros Bizjak, Richard Biener, Iain Sandoe
Cc: Hongtao Liu, liuhongt, GCC Patches, Joseph Myers
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?
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
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
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
0 siblings, 1 reply; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-07 12:28 UTC (permalink / raw)
To: Uros Bizjak, Richard Biener, Iain Sandoe, GCC Patches, liuhongt,
Joseph Myers
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?
> 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
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-07 12:28 ` Jakub Jelinek
@ 2021-09-08 0:54 ` Hongtao Liu
2021-09-08 2:37 ` Hongtao Liu
0 siblings, 1 reply; 18+ messages in thread
From: Hongtao Liu @ 2021-09-08 0:54 UTC (permalink / raw)
To: Jakub Jelinek
Cc: Uros Bizjak, Richard Biener, Iain Sandoe, GCC Patches, liuhongt,
Joseph Myers
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 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
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-08 0:54 ` Hongtao Liu
@ 2021-09-08 2:37 ` Hongtao Liu
2021-09-08 9:09 ` Jakub Jelinek
0 siblings, 1 reply; 18+ messages in thread
From: Hongtao Liu @ 2021-09-08 2:37 UTC (permalink / raw)
To: Jakub Jelinek
Cc: Uros Bizjak, Richard Biener, Iain Sandoe, GCC Patches, liuhongt,
Joseph Myers
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
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-08 2:37 ` Hongtao Liu
@ 2021-09-08 9:09 ` Jakub Jelinek
2021-09-08 9:31 ` Hongtao Liu
0 siblings, 1 reply; 18+ messages in thread
From: Jakub Jelinek @ 2021-09-08 9:09 UTC (permalink / raw)
To: Hongtao Liu
Cc: Uros Bizjak, Richard Biener, Iain Sandoe, GCC Patches, liuhongt,
Joseph Myers
On Wed, Sep 08, 2021 at 10:37:17AM +0800, Hongtao Liu wrote:
> 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.
I think this is ok, but not really useful until the *.ver change is acked,
because what this patch alone does is add extra non-exported entrypoints to
the shared library (aka wasted .text).
> 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
Jakub
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-08 9:09 ` Jakub Jelinek
@ 2021-09-08 9:31 ` Hongtao Liu
2021-09-18 19:13 ` Iain Sandoe
0 siblings, 1 reply; 18+ messages in thread
From: Hongtao Liu @ 2021-09-08 9:31 UTC (permalink / raw)
To: Jakub Jelinek
Cc: Uros Bizjak, Richard Biener, Iain Sandoe, GCC Patches, liuhongt,
Joseph Myers
On Wed, Sep 8, 2021 at 5:09 PM Jakub Jelinek <jakub@redhat.com> wrote:
>
> On Wed, Sep 08, 2021 at 10:37:17AM +0800, Hongtao Liu wrote:
> > 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.
>
> I think this is ok, but not really useful until the *.ver change is acked,
> because what this patch alone does is add extra non-exported entrypoints to
> the shared library (aka wasted .text).
I think your patch is ok (with divhc3/mulhc3), we can check in the
respective patches. :)
>
> > 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
>
> Jakub
>
--
BR,
Hongtao
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-08 9:31 ` Hongtao Liu
@ 2021-09-18 19:13 ` Iain Sandoe
2021-09-19 3:49 ` Hongtao Liu
0 siblings, 1 reply; 18+ messages in thread
From: Iain Sandoe @ 2021-09-18 19:13 UTC (permalink / raw)
To: Hongtao Liu, Jakub Jelinek; +Cc: GCC Patches
Hi Hongtao,
> On 8 Sep 2021, at 10:31, Hongtao Liu <crazylht@gmail.com> wrote:
>
> On Wed, Sep 8, 2021 at 5:09 PM Jakub Jelinek <jakub@redhat.com> wrote:
>>
>> On Wed, Sep 08, 2021 at 10:37:17AM +0800, Hongtao Liu wrote:
>>> 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.
this was applied as
https://gcc.gnu.org/pipermail/gcc-cvs/2021-September/353114.html
but it seems that (at least on Linux and Darwin) we now see a lot of:
/src-local/gcc-master-patched/libgcc/shared-object.mk:14: warning: overriding commands for target `_divhc3.o'
Makefile:501: warning: ignoring old commands for target `_divhc3.o'
/src-local/gcc-master-patched/libgcc/shared-object.mk:17: warning: overriding commands for target `_divhc3_s.o’
and I think this is because we need to exclude the libgcc2 version of the functions before adding teh replacements, like the patch below.
tested on x86_64-linux, darwin observing that the __divhc3 and __mulh3 symbols are present and that the metadata for the source files indicates that they are the replacement sources.
OK for master?
Iain
——
[PATCH] libgcc, X86: Exclude rules for libgcc2 __{div,mul}hc3.
We want to override the libgcc2 generic version of these functions
for X86. First exclude the original and the add in the replacements.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
libgcc/ChangeLog:
* config/i386/t-softfp: Exclude libgcc2 versions of __divhc3
and __mulhc3.
---
libgcc/config/i386/t-softfp | 1 +
1 file changed, 1 insertion(+)
diff --git a/libgcc/config/i386/t-softfp b/libgcc/config/i386/t-softfp
index 7620cc0cec5..fe2ad8a3c08 100644
--- a/libgcc/config/i386/t-softfp
+++ b/libgcc/config/i386/t-softfp
@@ -2,6 +2,7 @@ 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 += $(addprefix $(srcdir)/config/i386/, $(libgcc2-hf-extras))
--
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH] libgcc, i386: Export *hf* and *hc* from libgcc_s.so.1
2021-09-18 19:13 ` Iain Sandoe
@ 2021-09-19 3:49 ` Hongtao Liu
0 siblings, 0 replies; 18+ messages in thread
From: Hongtao Liu @ 2021-09-19 3:49 UTC (permalink / raw)
To: Iain Sandoe; +Cc: Jakub Jelinek, GCC Patches
On Sunday, September 19, 2021, Iain Sandoe <iain@sandoe-acoustics.co.uk>
wrote:
> Hi Hongtao,
>
> > On 8 Sep 2021, at 10:31, Hongtao Liu <crazylht@gmail.com> wrote:
> >
> > On Wed, Sep 8, 2021 at 5:09 PM Jakub Jelinek <jakub@redhat.com> wrote:
> >>
> >> On Wed, Sep 08, 2021 at 10:37:17AM +0800, Hongtao Liu wrote:
> >>> 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.
>
> this was applied as
> https://gcc.gnu.org/pipermail/gcc-cvs/2021-September/353114.html
>
> but it seems that (at least on Linux and Darwin) we now see a lot of:
>
> /src-local/gcc-master-patched/libgcc/shared-object.mk:14: warning:
> overriding commands for target `_divhc3.o'
> Makefile:501: warning: ignoring old commands for target `_divhc3.o'
> /src-local/gcc-master-patched/libgcc/shared-object.mk:17: warning:
> overriding commands for target `_divhc3_s.o’
>
> and I think this is because we need to exclude the libgcc2 version of the
> functions before adding teh replacements, like the patch below.
>
> tested on x86_64-linux, darwin observing that the __divhc3 and __mulh3
> symbols are present and that the metadata for the source files indicates
> that they are the replacement sources.
>
> OK for master?
Yes, thanks.
> Iain
>
> ——
>
> [PATCH] libgcc, X86: Exclude rules for libgcc2 __{div,mul}hc3.
>
> We want to override the libgcc2 generic version of these functions
> for X86. First exclude the original and the add in the replacements.
>
> Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
>
> libgcc/ChangeLog:
>
> * config/i386/t-softfp: Exclude libgcc2 versions of __divhc3
> and __mulhc3.
> ---
> libgcc/config/i386/t-softfp | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/libgcc/config/i386/t-softfp b/libgcc/config/i386/t-softfp
> index 7620cc0cec5..fe2ad8a3c08 100644
> --- a/libgcc/config/i386/t-softfp
> +++ b/libgcc/config/i386/t-softfp
> @@ -2,6 +2,7 @@ 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 += $(addprefix $(srcdir)/config/i386/, $(libgcc2-hf-extras))
>
> --
>
>
>
--
BR,
Hongtao
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2021-09-19 3:49 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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
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
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).