powerpc64: add single-instruction math functions
commit94f744195e17cf787a36c259254d56386b31fe20
authorRich Felker <dalias@aerifal.cx>
Fri, 23 Jun 2017 20:01:00 +0000 (23 16:01 -0400)
committerRich Felker <dalias@aerifal.cx>
Fri, 23 Jun 2017 20:01:00 +0000 (23 16:01 -0400)
tree6702e9ebf15bd4db3049d769fd06bd51abe124d8
parent9d12a6a21fd146f543e8a6b8ec4cce7fd61be606
powerpc64: add single-instruction math functions

while the official elfv2 abi for "powerpc64le" sets power8 as the
baseline isa, we use it for both little and big endian powerpc64
targets and need to maintain compatibility with pre-power8 models. the
instructions for sqrt, fabs, and fma are in the baseline isa; support
for the rest is conditional via predefined isa-level macros.

patch by David Edelsohn.
22 files changed:
src/math/powerpc64/ceil.c [new file with mode: 0644]
src/math/powerpc64/ceilf.c [new file with mode: 0644]
src/math/powerpc64/fabs.c [new file with mode: 0644]
src/math/powerpc64/fabsf.c [new file with mode: 0644]
src/math/powerpc64/floor.c [new file with mode: 0644]
src/math/powerpc64/floorf.c [new file with mode: 0644]
src/math/powerpc64/fma.c [new file with mode: 0644]
src/math/powerpc64/fmaf.c [new file with mode: 0644]
src/math/powerpc64/fmax.c [new file with mode: 0644]
src/math/powerpc64/fmaxf.c [new file with mode: 0644]
src/math/powerpc64/fmin.c [new file with mode: 0644]
src/math/powerpc64/fminf.c [new file with mode: 0644]
src/math/powerpc64/lrint.c [new file with mode: 0644]
src/math/powerpc64/lrintf.c [new file with mode: 0644]
src/math/powerpc64/lround.c [new file with mode: 0644]
src/math/powerpc64/lroundf.c [new file with mode: 0644]
src/math/powerpc64/round.c [new file with mode: 0644]
src/math/powerpc64/roundf.c [new file with mode: 0644]
src/math/powerpc64/sqrt.c [new file with mode: 0644]
src/math/powerpc64/sqrtf.c [new file with mode: 0644]
src/math/powerpc64/trunc.c [new file with mode: 0644]
src/math/powerpc64/truncf.c [new file with mode: 0644]