[Bug 294109] aarch64 example: /usr/local/lib/gcc15/libgcc_s.so.1 vs. lib/libgcc_s.so.1 symbols

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 29 Mar 2026 02:19:51 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294109

            Bug ID: 294109
           Summary: aarch64 example: /usr/local/lib/gcc15/libgcc_s.so.1
                    vs. lib/libgcc_s.so.1 symbols
           Product: Base System
           Version: 16.0-CURRENT
          Hardware: arm64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: marklmi26-fbsd@yahoo.com

aarch64 example.

The "+" symbols in the below are symbols that gcc15's
libgcc_s.so.1 has but FreeBSD 16-CURRENT does not have
an exact match for, as of an upgrade to the officially
distributed pkgbase 16.snap20260324221826 . "-" is for
symbols in FreeBSD's libgcc_s.so.1 that do not exist in
gcc15's.

Note some things are mismatches like, for example:

+GCC_4.5.0      __unordtf2
-GCC_4.6.0      __unordtf2

and:

+GCC_3.0        __addtf3
-GCC_4.6.0      __addtf3

where the name on the right is the same.

Other "+" lines are simply new relative to FreeBSD's
libgcc_s.so.1 for aarch64. The ones with the right
hand name column starting with the likes of GCC_
may be unused/unneeded for all I know.

Matching lines are not shown at all below.

--- /root/fbsd_main_lbgcc_s_GCC_symbols_aarch64.txt     2026-03-28
18:55:13.373671000 -0700
+++ /root/gcc15_lbgcc_s_GCC_symbols_aarch64.txt 2026-03-28 18:55:32.220152000
-0700
+GCC_14.0       0x80
+GCC_11.0       GCC_11.0
+GCC_13.0.0     GCC_13.0.0
+GCC_14.0       GCC_14.0
+GCC_14.0.0     GCC_14.0.0
+GCC_3.0        GCC_3.0
+GCC_3.3        GCC_3.3
+GCC_3.3.1      GCC_3.3.1
+GCC_3.4        GCC_3.4
+GCC_3.4.2      GCC_3.4.2
+GCC_3.4.4      GCC_3.4.4
+GCC_4.0.0      GCC_4.0.0
+GCC_4.2.0      GCC_4.2.0
+GCC_4.3.0      GCC_4.3.0
+GCC_4.5.0      GCC_4.5.0
+GCC_4.7.0      GCC_4.7.0
+GCC_7.0.0      GCC_7.0.0
+GCC_3.0        __addtf3
-GCC_4.6.0      __addtf3
-GCC_3.0        __ashldi3
-GCC_3.0        __ashrdi3
+GCC_4.7.0      __clrsbdi2
+GCC_4.7.0      __clrsbti2
-GCC_3.4        __clzsi2
-GCC_3.0        __cmpdi2
-GCC_4.6.0      __cmptf2
-GCC_3.4        __ctzsi2
+GCC_3.0        __deregister_frame_info
+GCC_3.0        __deregister_frame_info_bases
-GCC_3.0        __divdi3
+GCC_11.0       __divhc3
+GCC_14.0.0     __divmodbitint4
+GCC_7.0.0      __divmodti4
+GCC_4.0.0      __divtc3
+GCC_3.0        __divtf3
-GCC_4.6.0      __divtf3
+GCC_4.3.0      __emutls_get_address
+GCC_4.3.0      __emutls_register_common
+GCC_3.0        __eqtf2
-GCC_4.6.0      __eqtf2
+GCC_13.0.0     __extendbfsf2
+GCC_3.0        __extenddftf2
-GCC_4.6.0      __extenddftf2
+GCC_11.0       __extendhftf2
+GCC_3.0        __extendsftf2
-GCC_4.6.0      __extendsftf2
+GCC_14.0.0     __fixdfbitint
-GCC_3.0        __fixdfdi
+GCC_11.0       __fixhfti
+GCC_14.0.0     __fixsfbitint
-GCC_3.0        __fixsfdi
+GCC_14.0.0     __fixtfbitint
+GCC_3.0        __fixtfdi
-GCC_4.6.0      __fixtfdi
+GCC_3.0        __fixtfsi
-GCC_4.6.0      __fixtfsi
+GCC_3.0        __fixtfti
-GCC_4.6.0      __fixtfti
-GCC_3.0        __fixunsdfsi
+GCC_11.0       __fixunshfti
-GCC_3.0        __fixunssfsi
+GCC_3.0        __fixunstfdi
-GCC_4.6.0      __fixunstfdi
+GCC_3.0        __fixunstfsi
-GCC_4.6.0      __fixunstfsi
+GCC_3.0        __fixunstfti
-GCC_4.6.0      __fixunstfti
+GCC_14.0.0     __floatbitintbf
+GCC_14.0.0     __floatbitintdf
+GCC_14.0.0     __floatbitinthf
+GCC_14.0.0     __floatbitintsf
+GCC_14.0.0     __floatbitinttf
+GCC_13.0.0     __floatdibf
-GCC_3.0        __floatdidf
-GCC_3.0        __floatdisf
+GCC_3.0        __floatditf
-GCC_4.6.0      __floatditf
+GCC_3.0        __floatsitf
-GCC_4.6.0      __floatsitf
+GCC_13.0.0     __floattibf
+GCC_11.0       __floattihf
+GCC_3.0        __floattitf
+GCC_4.2.0      __floatunditf
-GCC_4.6.0      __floatunditf
+GCC_4.2.0      __floatunsitf
-GCC_4.6.0      __floatunsitf
+GCC_13.0.0     __floatuntibf
+GCC_11.0       __floatuntihf
+GCC_4.2.0      __floatuntitf
-GCC_4.6.0      __floatuntitf
+GCC_3.0        __getf2
-GCC_4.6.0      __getf2
+GCC_3.0        __gttf2
-GCC_4.6.0      __gttf2
+GCC_14.0.0     __hardcfr_check
+GCC_3.0        __letf2
-GCC_4.6.0      __letf2
-GCC_3.0        __lshrdi3
+GCC_3.0        __lttf2
-GCC_4.6.0      __lttf2
-GCC_3.0        __moddi3
+GCC_14.0.0     __mulbitint3
-GCC_3.0        __muldi3
+GCC_11.0       __mulhc3
+GCC_4.0.0      __multc3
+GCC_3.0        __multf3
-GCC_4.6.0      __multf3
-GCC_3.0        __negdi2
+GCC_3.0        __negtf2
+GCC_3.0        __netf2
-GCC_4.6.0      __netf2
-GCC_3.4        __paritysi2
-GCC_3.4        __popcountsi2
+GCC_4.0.0      __powitf2
+GCC_3.0        __register_frame_info
+GCC_3.0        __register_frame_info_bases
+GCC_3.0        __register_frame_info_table
+GCC_3.0        __register_frame_info_table_bases
+GCC_3.0        __register_frame_table
+GCC_14.0.0     __strub_enter
+GCC_14.0.0     __strub_leave
+GCC_14.0.0     __strub_update
+GCC_3.0        __subtf3
-GCC_4.6.0      __subtf3
+GCC_13.0.0     __truncdfbf2
+GCC_13.0.0     __trunchfbf2
+GCC_13.0.0     __truncsfbf2
+GCC_13.0.0     __trunctfbf2
+GCC_3.0        __trunctfdf2
-GCC_4.6.0      __trunctfdf2
+GCC_11.0       __trunctfhf2
+GCC_3.0        __trunctfsf2
-GCC_4.6.0      __trunctfsf2
-GCC_3.0        __ucmpdi2
-GCC_3.0        __udivdi3
-GCC_3.0        __udivmoddi4
-GCC_3.0        __umoddi3
+GCC_4.5.0      __unordtf2
-GCC_4.6.0      __unordtf2

This leads to needing to use -rpath at times to avoid
FreeBSD's libgcc_s.so.1 .

-- 
You are receiving this mail because:
You are the assignee for the bug.