Switch to hard-float by default?

John Baldwin jhb at freebsd.org
Wed Jan 10 19:54:37 UTC 2018


I have been working on LLVM libunwind patches for MIPS and the last round has
been to teach the unwinder to handle hard-float.  As part of this I just fixed
a bug which had broken HF support for N32 (in review now), and I have a
working 'mipsn32hf' world that boots under qemu.  However, if I add
'mipsn32hf' to the list of known targets that is yet another world to add
to make universe.  I wonder if instead we should consider switching MIPS to
assume hard-float by default?  We made that change for 32-bit arm recently.

The simplest approach would be to add 'mipsn32hf' and then remove all the
non '*hf' targets from Makefile.inc1 (if we only wanted to support HF).  A
more drastic approach would be to change the existing 'mips*' targets to
assume hard-float, remove all the '*hf' targets (which are only in 12 anyway
I think?) and add in explicit '*sf' targets if anyone has a need for them.
Given that none of the *hf targets have been MFC'd are only present in 12
anyway, maybe the more drastic route is actually better?  If we do go that
route, does anyone have a use case for a '*sf' target?  That is, is anyone
running FreeBSD/mips on a processor that does not include an FPA?

-- 
John Baldwin


More information about the freebsd-mips mailing list