Joseph Myers
ae8372d7e4
Add SSE4.1 trunc, truncf (bug 20142).
...
This patch adds SSE4.1 versions of trunc and truncf, using the roundsd
/ roundss instructions, similar to the versions of ceil, floor, rint
and nearbyint functions we already have. In my testing with the glibc
benchtests these are about 30% faster than the C versions for double,
20% faster for float.
Tested for x86_64.
[BZ #20142 ]
* sysdeps/x86_64/fpu/multiarch/Makefile (libm-sysdep_routines):
Add s_trunc-c, s_truncf-c, s_trunc-sse4_1 and s_truncf-sse4_1.
* sysdeps/x86_64/fpu/multiarch/s_trunc-c.c: New file.
* sysdeps/x86_64/fpu/multiarch/s_trunc-sse4_1.S: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_trunc.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_truncf-c.c: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_truncf-sse4_1.S: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_truncf.c: Likewise.
2017-09-20 16:54:05 +00:00
..
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-16 08:43:48 -07:00
2017-08-28 08:45:53 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-16 08:43:48 -07:00
2017-08-18 06:19:07 -07:00
2017-09-12 07:54:47 -07:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:02:13 -07:00
2017-09-20 16:54:05 +00:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-01-01 00:14:16 +00:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-04 13:02:13 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-09-20 16:54:05 +00:00
2017-09-20 16:54:05 +00:00
2017-09-20 16:54:05 +00:00
2017-09-20 16:54:05 +00:00
2017-09-20 16:54:05 +00:00
2017-09-20 16:54:05 +00:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-08-07 08:20:56 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-08-23 06:26:44 -07:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-08-23 06:26:44 -07:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00
2017-01-01 00:14:16 +00:00
2017-08-04 13:03:58 -07:00
2017-08-04 13:03:58 -07:00