arch/mips: add support for MIPS32 FP mode
authorVicente Olivert Riera <Vincent.Riera@imgtec.com>
Wed, 28 Jun 2017 15:17:11 +0000 (16:17 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 16 Jul 2017 14:45:22 +0000 (16:45 +0200)
commit9a0a0a976bc1094719556065ab5e982c6ca27563
tree4cfa0f640d7a0e4e6642a4c603d5dd4f7d7bec48
parent2d8f3fc430fe4f16c570097cf3dc33aa78ccb702
arch/mips: add support for MIPS32 FP mode

MIPS32 support different FP modes (32,xx,64), so give the user the
opportunity to choose between them. That will cause host-gcc to be built
using the --with-fp-32=[32|xx|64] configure option. Also the
-mfp[32|xx|64] gcc option will be added to TARGET_CFLAGS and to the
toolchain wrapper.

FP mode option shouldn't be used for soft-float, so we add logic in the
toolchain wrapper if -msoft-float is among the arguments in order to not
append the -fp[[32|xx|64] option, otherwise the compilation may fail.

Information about FP modes here:

- https://sourceware.org/binutils/docs/as/MIPS-Options.html
- https://dmz-portal.imgtec.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking#5._Generating_modeless_code

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
arch/Config.in
arch/Config.in.mips
package/gcc/gcc.mk
toolchain/toolchain-external/pkg-toolchain-external.mk
toolchain/toolchain-wrapper.c