On Fri, Jan 14, 2022 at 04:07:08PM +0100, Dan Horák wrote: > > Another important thing I wanted to say is that we'd like to switch > > ppc64le from the numerically problematic IBM extended long double to > > IEEE 754 quad long double. This is an ABI change. Some libraries > > are already built so that they support both ABIs at the same time, > > including glibc, libstdc++, libgcc, libgfortran etc. > > For other libraries and binaries, the compiler, assembler and linker > > will notice if they use long double and flag them as using either > > IBM or IEEE long double and linker (or I think dynamic linker too) > > might complain when things are mixed. > > Right now the rawhide gcc still defaults to -mabi=ibmlongdouble > > but the glibc/gcc libraries are built compatibly with both. > > We'd like to configure gcc shortly before the mass rebuild with > > --with-long-double-format=ieee so that it will default to > > -mabi=ieeelongdouble, probably on a side-tag build first, and it > > will be highly desirable to rebuild at least some of the most commonly > > used library packages in the order of dependencies there, otherwise > > I'd be afraid the mass rebuild could fail for way too many packages > > (as the mass rebuild doesn't do dependency order rebuilds but just > > goes through packages alphabetically or so). > > Any suggestions on which packages have commonly used library packages > > that use long double? > > readelf -A on libraries on ppc64le prints either nothing (either > > the library is thought not to use long double or supports both ABIs > > transparently or hasn't been rebuilt for some years), or > > Attribute Section: gnu > > File Attributes > > Tag_GNU_Power_ABI_FP: hard float, 128-bit IBM long double > > for libraries (or binaries or object files) that use IBM long double > > only or > > Attribute Section: gnu > > File Attributes > > Tag_GNU_Power_ABI_FP: hard float, 128-bit IEEE long double > > for IEEE long doubles. > > So I think we want to rebuild on a side-tag packages that > > provide shared libraries used by hundreds of other packages that > > are > > Tag_GNU_Power_ABI_FP: hard float, 128-bit IBM long double > > right now. > > a quick&dirty scan of /usr/lib64 on my F-34 workstation shows > many ./libQt5* > many ./libLLVM* > ./libgobject-2.0 > ./libgio-2.0 > ./libglib-2.0 > ./libexiv2-xmp > ./libhwy > ./python3.9/site-packages/numpy/* > ./libSDL2 > ./libiberty > ./clang/12.0.1/lib/libclang_rt.builtins-powerpc64le.a > ./ghdl/llvm/libgrt.a > ./libc > > as users of the Tag_GNU_Power_ABI_FP attribute. A vast majority of the > hits are "Tag_GNU_Power_ABI_FP: hard float, unspecified long double" > > Translated to packages it is qt5-*, llvm + clang, numpy, SDL2, glib2, > exiv2, glibc, highway The -mabi=ieeelongdouble defaulting gcc is now in the f36-build-side-49600 side-tag (gcc -0.5.1.fc36, same as -0.5.fc36 in rawhide except for the different ppc64le default ABI). Jakub _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure