Page MenuHomeFreeBSD

libgcc_s: __extendxftf2 and __trunctfxf2 are amd64-only
ClosedPublic

Authored by brooks on May 1 2024, 10:00 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Dec 7, 3:39 AM
Unknown Object (File)
Sat, Dec 7, 3:39 AM
Unknown Object (File)
Thu, Nov 28, 6:44 AM
Unknown Object (File)
Nov 23 2024, 7:04 PM
Unknown Object (File)
Nov 22 2024, 7:58 PM
Unknown Object (File)
Nov 22 2024, 9:21 AM
Unknown Object (File)
Nov 18 2024, 9:11 PM
Unknown Object (File)
Nov 15 2024, 8:37 AM
Subscribers

Details

Summary

extendxftf2 and trunctfxf2 build on amd64 not aarch64 and riscv.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 57550
Build 54438: arc lint + arc unit

Event Timeline

lib/libgcc_s/Symbol.map
225

Shouldn't this be an or? Although I'm not entirely sure if it builds for i386 since it needs int128.

brooks retitled this revision from libgcc_s: __extendxftf2 and __trunctfxf2 are x86 symbols to libgcc_s: __extendxftf2 and __trunctfxf2 are amd64-only.May 2 2024, 4:19 PM
brooks edited the summary of this revision. (Show Details)

These symbols are amd64-only

brooks added inline comments.
lib/libgcc_s/Symbol.map
225

*sigh* how did this even compile?

lib/libgcc_s/Symbol.map
225

the source files for these are in a .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" block in lib/libcompiler_rt/Makefile.inc?

brooks marked an inline comment as done.

Avoid a couple compiler invocations to create empty object files

lib/libgcc_s/Symbol.map
225

The pre-conditions aren't met when targeting i386 so the object files end up empty. I've tweaked the makefile to avoid those compiler invocations.

This revision is now accepted and ready to land.May 2 2024, 5:10 PM