musl/arch
Rich Felker 7be59733d7 add SPE FPU support to powerpc-sf
When the soft-float ABI for PowerPC was added in commit
5a92dd95c7, with Freescale cpus using
the alternative SPE FPU as the main use case, it was noted that we
could probably support hard float on them, but that it would involve
determining some difficult ABI constraints. This commit is the
completion of that work.

The Power-Arch-32 ABI supplement defines the ABI profiles, and indeed
ATR-SPE is built on ATR-SOFT-FLOAT. But setjmp/longjmp compatibility
are problematic for the same reason they're problematic on ARM, where
optional float-related parts of the register file are "call-saved if
present". This requires testing __hwcap, which is now done.

In keeping with the existing powerpc-sf subarch definition, which did
not have fenv, the fenv macros are not defined for SPE and the SPEFSCR
control register is left (and assumed to start in) the default mode.
2021-09-23 19:11:46 -04:00
..
aarch64 aarch64/bits/mman.h: add PROT_MTE from linux v5.10 2021-02-15 09:16:06 -05:00
arm bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
generic make generic bits/fcntl.h shareable with 64-bit archs 2020-09-03 17:58:17 -04:00
i386 bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
m68k bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
microblaze bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
mips fix excessively slow TLS performance on some mips models 2021-08-12 18:07:44 -04:00
mips64 bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
mipsn32 bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
or1k bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
powerpc add SPE FPU support to powerpc-sf 2021-09-23 19:11:46 -04:00
powerpc64 bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
riscv64 riscv: rename __NR_fstatat __NR_newfstatat 2021-06-05 11:47:16 -04:00
s390x bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
sh bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
x32 bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00
x86_64 bits/syscall.h: add process_madvise from linux v5.10 2021-02-15 09:15:54 -05:00