This is an archive of the discontinued LLVM Phabricator instance.

[PowerPC] Avoid generating 128-bit __multi3() and __muloti4() on 32-bit
AbandonedPublic

Authored by dim on Feb 12 2022, 2:25 AM.

Details

Summary

Similar to 789708617d20 and 5c91b98c5d45 for 32-bit ARM, and
fcf27188d753, d0eeb64be5848 and 124bcc1a139d for 32-bit X86, avoid
emitting 128-bit library calls, since these are not supported in
compiler-rt for 32-bit PowerPC.

Diff Detail

Event Timeline

dim created this revision.Feb 12 2022, 2:25 AM
dim requested review of this revision.Feb 12 2022, 2:25 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 12 2022, 2:25 AM
pkubaj accepted this revision.Mar 11 2023, 1:19 PM

Please commit, currently some packages on FreeBSD report:

g_module_open() failed for /usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so: /usr/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so: Undefined symbol "__multi3"
This revision is now accepted and ready to land.Mar 11 2023, 1:19 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 11 2023, 1:19 PM
nickdesaulniers accepted this revision.Mar 13 2023, 9:17 AM
dim abandoned this revision.Mar 13 2023, 11:32 AM
dim added a subscriber: aaronpuchert.

This was already fixed by @aaronpuchert in rGc1a31ee65b3a2bf2b452febb99703b3fdfa43328, in a slightly different way, but functionally equivalent. Test cases were also updated.

It also seems to have ended up in release/15.x and release/16.x, so I don't think this review is relevant anymore. @pkubaj were those FreeBSD port errors with an earlier version of clang than 15.0 ?