Page MenuHomeFreeBSD

libgcc_s: export integer and floating point __aeabi_ symbols
ClosedPublic

Authored by mmel on Thu, May 1, 8:27 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, May 21, 12:16 PM
Unknown Object (File)
Tue, May 20, 1:02 AM
Unknown Object (File)
Thu, May 15, 8:21 PM
Unknown Object (File)
Tue, May 13, 6:51 AM
Unknown Object (File)
Sun, May 11, 1:11 AM
Unknown Object (File)
Thu, May 8, 3:36 PM
Unknown Object (File)
Thu, May 8, 5:54 AM
Unknown Object (File)
Tue, May 6, 11:07 AM
Subscribers

Details

Summary
Export all integer and floating point __aeabi_ functions defined by
"Run-time ABI for Arm Architecture"  from libgcc, excluding __aeabi_h2f_alt,
__aeabi_f2h_alt and __aeabi_d2h_alt, which are not yet implemented in
compiler-rt.

To maintain ABI backward compatibility, convert __aeabi_ floating-point
symbols previously exported from libc to an explicit non-default version.

Remove guessing of vfp/not-vfp version  for compiler-rt sources. The vfp
version needs additional runtime logic to select the right implementation
and we don't have it implemented.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

mmel requested review of this revision.Thu, May 1, 8:27 AM

Will this work with softfloat? If not, and we don't think anyone is using it in 15 then we should remove support for non-VFP HW first.

They are all softfloat - all aeabi functions use softfloat calling convections and compiler-rt implementation doesn't use VFP. I removed the optimized VFP variants from the build (because they needed support in the RT linker). Imho these floating point functions are only used for softfloat binaries and also for Thumb-1 code.

Are you planning on MFC'ing this? But LGTM for the rest.

This revision is now accepted and ready to land.Fri, May 2, 4:21 PM

I plan to MFC it, sure. I just forgot to copy all tag lines into the review.