t-float128-hw revision 1.3 1 # Support for adding __float128 hardware support to the powerpc.
2 # Tell the float128 functions that the ISA 3.0 hardware support can
3 # be compiled it to be selected via IFUNC functions.
4
5 FLOAT128_HW_INSNS = -DFLOAT128_HW_INSNS
6
7 # New functions for hardware support
8 fp128_hw_funcs = float128-hw
9 fp128_hw_src = $(srcdir)/config/rs6000/float128-hw.c
10 fp128_hw_static_obj = float128-hw$(objext)
11 fp128_hw_shared_obj = float128-hw_s$(objext)
12 fp128_hw_obj = $(fp128_hw_static_obj) $(fp128_hw_shared_obj)
13
14 fp128_ifunc_funcs = float128-ifunc
15 fp128_ifunc_src = $(srcdir)/config/rs6000/float128-ifunc.c
16 fp128_ifunc_static_obj = float128-ifunc$(objext)
17 fp128_ifunc_shared_obj = float128-ifunc_s$(objext)
18 fp128_ifunc_obj = $(fp128_ifunc_static_obj) $(fp128_ifunc_shared_obj)
19
20 # Add _sw suffix to names to allow ifunc support.
21 fp128_sed_hw = -hw
22
23 # Build the hardware support functions with appropriate hardware support
24 FP128_CFLAGS_HW = -Wno-type-limits -mvsx -mfloat128 \
25 -mpower8-vector -mpower9-vector \
26 -mfloat128-hardware \
27 -I$(srcdir)/soft-fp \
28 -I$(srcdir)/config/rs6000 \
29 $(FLOAT128_HW_INSNS)
30
31 $(fp128_hw_obj) : INTERNAL_CFLAGS += $(FP128_CFLAGS_HW)
32 $(fp128_hw_obj) : $(srcdir)/config/rs6000/t-float128-hw
33
34 $(fp128_ifunc_obj) : INTERNAL_CFLAGS += $(FP128_CFLAGS_SW)
35 $(fp128_ifunc_obj) : $(srcdir)/config/rs6000/t-float128-hw
36