# Add the bpabi.S functions.
LIB1ASMFUNCS += _aeabi_lcmp _aeabi_ulcmp _aeabi_ldivmod _aeabi_uldivmod

# Add the BPABI C functions.
LIB2ADD += $(srcdir)/config/arm/bpabi.c \
	   $(srcdir)/config/arm/unaligned-funcs.c

LIB2ADD_ST += $(srcdir)/config/arm/fp16.c

LIB2ADDEH = $(srcdir)/config/arm/unwind-arm.c \
  $(srcdir)/config/arm/libunwind.S \
  $(srcdir)/config/arm/pr-support.c $(srcdir)/unwind-c.c

# Add the BPABI names.
SHLIB_MAPFILES += $(srcdir)/config/arm/libgcc-bpabi.ver

# On ARM, specifying -fnon-call-exceptions will needlessly pull in
# the unwinder in simple programs which use 64-bit division.  Omitting
# the option is safe.
LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions
