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