glibc/sysdeps/sparc/sparc64/fpu
Aurelien Jarno bdf20beac1 sparc64: add a VIS3 version of ceil, floor and trunc
sparc64 passes floating point values in the floating point registers.
As the the generic ceil, floor and trunc functions use integer
instructions, it makes sense to provide a VIS3 version consisting in
the the generic version compiled with -mvis3. GCC will then use
movdtox, movxtod, movwtos and movstow instructions.

sparc32 passes the floating point values in the integer registers, so it
doesn't make sense to do the same.

Changelog:
	* sysdeps/ieee754/dbl-64/s_trunc.c: Avoid alias renamed.
	* sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: Likewise.
	* sysdeps/ieee754/flt-32/s_truncf.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile
	[$(subdir) = math && $(have-as-vis3) = yes] (libm-sysdep_routines):
	Add s_ceilf-vis3, s_ceil-vis3, s_floorf-vis3, s_floor-vis3,
	s_truncf-vis3, s_trunc-vis3.
	(CFLAGS-s_ceilf-vis3.c): New. Set to -Wa,-Av9d -mvis3.
	(CFLAGS-s_ceil-vis3.c): Likewise.
	(CFLAGS-s_floorf-vis3.c): Likewise.
	(CFLAGS-s_floor-vis3.c): Likewise.
	(CFLAGS-s_truncf-vis3.c): Likewise.
	(CFLAGS-s_trunc-vis3.c): Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis3.c: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis3.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis3.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis3.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_trunc-vis3.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_truncf-vis3.c: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c: Likewise.
2016-08-03 13:35:22 +02:00
..
multiarch sparc64: add a VIS3 version of ceil, floor and trunc 2016-08-03 13:35:22 +02:00
e_sqrtl.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_copysign.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_copysignf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_fabs.c Update. 2002-04-03 00:36:12 +00:00
s_fabsf.c Update. 2002-04-03 00:36:12 +00:00
s_fabsl.c Update. 2002-04-03 00:36:12 +00:00
s_fdim.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_fdimf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_finite.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_finitef.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_fma.c Sparc long double is emulated in software, therefore use dbl-64's s_fma.c 2012-03-15 20:55:42 -07:00
s_fmax.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_fmaxf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_fmin.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_fminf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_isinf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_isinff.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_isnan.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_isnanf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_llrint.S Add sparc optimized {l,}rint{,f} for 32-bit v9 and 64-bit. 2012-03-02 18:59:09 -08:00
s_llrintf.S Add sparc optimized {l,}rint{,f} for 32-bit v9 and 64-bit. 2012-03-02 18:59:09 -08:00
s_lrint.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_lrintf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_nearbyint.S SPARC: fix nearbyint on sNaN input 2016-07-01 16:36:41 +02:00
s_nearbyintf.S SPARC: fix nearbyint on sNaN input 2016-07-01 16:36:41 +02:00
s_rint.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_rintf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_signbit.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_signbitf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
s_signbitl.S Optimized sparc assembler for signbit{,f,l} and some variants of isnan. 2012-03-01 20:43:38 -08:00
w_sqrt.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
w_sqrtf.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00