diff mbox series

[RS6000] Use LIB2_SIDITI_CONV_FUNCS in place of ppc64-fp.c

Message ID 20201113130935.GQ15956@bubble.grove.modra.org
State New
Headers show
Series [RS6000] Use LIB2_SIDITI_CONV_FUNCS in place of ppc64-fp.c | expand

Commit Message

Alan Modra Nov. 13, 2020, 1:09 p.m. UTC
This patch retires ppc64-fp.c in favour of using
"LIB2_SIDITI_CONV_FUNCS = yes", which is a lot better solution than
having a copy of selected libgcc2.c functions.

So for powerpc64-linux we see these changes in libgcc files (plus
corresponding _s.o variants).
+_fixdfti.o
+_fixsfti.o
+_fixtfti.o
+_fixunsdfti.o
+_fixunssfti.o
+_fixunstfti.o
+_floattidf.o
+_floattisf.o
+_floattitf.o
+_floatuntidf.o
+_floatuntisf.o
+_floatuntitf.o
-ppc64-fp.o

with these empty objects also appearing (plus _s.o variants).
+_fixunsxfti.o
+_fixxfti.o
+_floattixf.o
+_floatuntixf.o

In reality we aren't getting new TI mode conversions as it might seem,
because the old *di*.o files corresponding to the above files
contained TI mode conversions, whereas now they contain DI mode
conversions.  Those match the functions provided in ppc64-fp.o, and
the set of dynamic libgcc_s.so.1 symbols is identical, apart from 
values, to before this patch.

For ppc32 we get a whole lot more empty objects replacing the empty
ppc64-fp.o.  Again the set of global symbol in libgcc.a and dynamic
symbols in libgcc_s.so.1 are unchanged.

Bootstrapped and regression tested powerpc64-linux, powerpc64le-linux,
powerpc-linux and powerpc-ibm-aix7.2.4.0.  OK?

	* config/rs6000/t-ppc64-fp (LIB2ADD): Delete.
	(LIB2_SIDITI_CONV_FUNCS): Define.
	* config/rs6000/ppc64-fp.c: Delete file.

Comments

Segher Boessenkool Nov. 14, 2020, 1:53 a.m. UTC | #1
Hi!

On Fri, Nov 13, 2020 at 11:39:35PM +1030, Alan Modra wrote:
> This patch retires ppc64-fp.c in favour of using
> "LIB2_SIDITI_CONV_FUNCS = yes", which is a lot better solution than
> having a copy of selected libgcc2.c functions.

Nice :-)

> Bootstrapped and regression tested powerpc64-linux, powerpc64le-linux,
> powerpc-linux and powerpc-ibm-aix7.2.4.0.  OK?

Yes, okay for trunk, thank you!

> 	* config/rs6000/t-ppc64-fp (LIB2ADD): Delete.
> 	(LIB2_SIDITI_CONV_FUNCS): Define.
> 	* config/rs6000/ppc64-fp.c: Delete file.

(Don't forget to delete the file, it isn't in your patch.)


Segher
diff mbox series

Patch

diff --git a/libgcc/config/rs6000/t-ppc64-fp b/libgcc/config/rs6000/t-ppc64-fp
index 26d1730bcdb..999679fc3cb 100644
--- a/libgcc/config/rs6000/t-ppc64-fp
+++ b/libgcc/config/rs6000/t-ppc64-fp
@@ -1,2 +1 @@ 
-# Can be used unconditionally, wrapped in __powerpc64__ || __64BIT__ __ppc64__.
-LIB2ADD += $(srcdir)/config/rs6000/ppc64-fp.c
+LIB2_SIDITI_CONV_FUNCS = yes