# Library members defined in libgcc2.c.
lib2funcs = _muldi3 _negdi2 _lshrdi3 _ashldi3 _ashrdi3 _cmpdi2 _ucmpdi2    \
            _clear_cache _trampoline __main _absvsi2                       \
            _absvdi2 _addvsi3 _addvdi3 _subvsi3 _subvdi3 _mulvsi3 _mulvdi3 \
            _negvsi2 _negvdi2 _ctors _ffssi2 _ffsdi2 _clz _clzsi2 _clzdi2  \
            _ctzsi2 _ctzdi2 _popcount_tab _popcountsi2 _popcountdi2        \
            _paritysi2 _paritydi2 _bswapsi2 _bswapdi2 _clrsbsi2            \
            _clrsbdi2

ifeq ($(BID_VARIANT_FLAG_NOFPU),)
lib2funcs += _powisf2 _powidf2 _powixf2 _powitf2 _mulhc3 _mulsc3 _muldc3   \
             _mulxc3 _multc3 _divhc3 _divsc3 _divdc3 _divxc3 _divtc3
endif

# These might cause a divide overflow trap and so are compiled with
# unwinder info.
LIB2_DIVMOD_FUNCS = _divdi3 _moddi3 _divmoddi4 \
                    _udivdi3 _umoddi3 _udivmoddi4 _udiv_w_sdiv

# GCC >= 14
ifneq ($(call libgcc_if_min_version,14),)
lib2funcs += _mulbitint3
LIB2_DIVMOD_FUNCS += _divmodbitint4
endif
