1 ABI_SINGLE:=$(findstring __riscv_float_abi_single,$(shell $(gcc_compile_bare) -dM -E - </dev/null)) 2 ABI_DOUBLE:=$(findstring __riscv_float_abi_double,$(shell $(gcc_compile_bare) -dM -E - </dev/null)) 3 ABI_QUAD:=$(findstring __riscv_float_abi_quad,$(shell $(gcc_compile_bare) -dM -E - </dev/null)) 4 5 softfp_int_modes := si di 6 softfp_exclude_libgcc2 := n 7 8 ifndef ABI_QUAD 9 ifdef ABI_DOUBLE 10 11 softfp_float_modes := tf 12 softfp_extensions := sftf dftf 13 softfp_truncations := tfsf tfdf 14 15 # Enable divide routines to make -mno-fdiv work. 16 softfp_extras := divsf3 divdf3 17 18 else 19 # !ABI_DOUBLE 20 21 softfp_float_modes := df tf 22 softfp_extensions := sfdf sftf dftf 23 softfp_truncations := dfsf tfsf tfdf 24 25 ifndef ABI_SINGLE 26 softfp_float_modes += sf 27 else 28 # ABI_SINGLE 29 30 # Enable divide routines to make -mno-fdiv work. 31 softfp_extras := divsf3 32 33 endif 34 35 endif 36 37 else 38 # ABI_QUAD 39 40 # Enable divide routines to make -mno-fdiv work. 41 softfp_extras := divsf3 divdf3 divtf3 42 43 endif 44