f30dd60766
gcc/ PR target/92055 * config.gcc (tm_defines) [target=avr]: Support --with-libf7, --with-double-comparison. * doc/install.texi: Document them. * config/avr/avr-c.c (avr_cpu_cpp_builtins) <WITH_LIBF7_LIBGCC, WITH_LIBF7_MATH, WITH_LIBF7_MATH_SYMBOLS> <WITH_DOUBLE_COMPARISON>: New built-in defines. * doc/invoke.texi (AVR Built-in Macros): Document them. * config/avr/avr-protos.h (avr_float_lib_compare_returns_bool): New. * config/avr/avr.c (avr_float_lib_compare_returns_bool): New function. * config/avr/avr.h (FLOAT_LIB_COMPARE_RETURNS_BOOL): New macro. libgcc/ PR target/92055 * config.host (tmake_file) [target=avr]: Add t-libf7, t-libf7-math, t-libf7-math-symbols as specified by --with-libf7=. * config/avr/t-avrlibc: Don't copy libgcc.a if there are modules depending on sizeof (double) or sizeof (long double). * config/avr/libf7: New folder. libgcc/config/avr/libf7/ PR target/92055 * t-libf7: New file. * t-libf7-math: New file. * t-libf7-math-symbols: New file. * libf7-common.mk: New file. * libf7-asm-object.mk: New file. * libf7-c-object.mk: New file. * asm-defs.h: New file. * libf7.h: New file. * libf7.c: New file. * libf7-asm.sx: New file. * libf7-array.def: New file. * libf7-const.def: New file. * libf7-constdef.h: New file. * f7renames.sh: New script. * f7wraps.sh: New script. * f7-renames.h: New generated file. * f7-wraps.h: New generated file. From-SVN: r279994
22 lines
629 B
Plaintext
22 lines
629 B
Plaintext
# Triggered by --with-libf7=math or --with-libf7=math-symbols
|
|
#
|
|
# We provide weak double wrappers for functions specified in math.h,
|
|
# but with __ prepended to the symbol name used for the double function.
|
|
# For example we provide double __sin (double) but neither sin nor sinl.
|
|
# To get weak symbols according to math.h, t-libf7-math-symbols has to
|
|
# be used which is triggered by --with-libf7=math-symbols.
|
|
|
|
WITH_LIBF7_MATH_FUNCTIONS = 1
|
|
|
|
# __sin, ...
|
|
F7_ASM_WRAPS_m_dd += $(m_dd)
|
|
|
|
# __pow, __fmin, ...
|
|
F7_ASM_WRAPS_m_ddd += $(m_ddd)
|
|
|
|
# __ldexp, ...
|
|
F7_ASM_WRAPS_m_ddx += $(m_ddx)
|
|
|
|
# __lrint, ...
|
|
F7_ASM_WRAPS_m_xd += $(m_xd)
|