[Bug math/20024] [x86_64] vectorized sincos trashes the stack
cvs-commit at gcc dot gnu.org
sourceware-bugzilla@sourceware.org
Fri Jul 1 11:32:00 GMT 2016
https://sourceware.org/bugzilla/show_bug.cgi?id=20024
--- Comment #9 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via ee2196bb6766ca7e63a1ba22ebb7619a3266776a (commit)
from fd1cf1dc3b2d90c2a61332363feb1043f6916564 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ee2196bb6766ca7e63a1ba22ebb7619a3266776a
commit ee2196bb6766ca7e63a1ba22ebb7619a3266776a
Author: Andrew Senkevich <andrew.senkevich@intel.com>
Date: Fri Jul 1 14:15:38 2016 +0300
Fixed wrong vector sincos/sincosf ABI to have it compatible with
current vector function declaration "#pragma omp declare simd notinbranch",
according to which vector sincos should have vector of pointers for second
and
third parameters. It is fixed with implementation as wrapper to version
having second and third parameters as pointers.
[BZ #20024]
* sysdeps/x86/fpu/test-math-vector-sincos.h: New.
* sysdeps/x86_64/fpu/multiarch/svml_d_sincos2_core_sse4.S: Fixed ABI
of this implementation of vector function.
* sysdeps/x86_64/fpu/multiarch/svml_d_sincos4_core_avx2.S: Likewise.
* sysdeps/x86_64/fpu/multiarch/svml_d_sincos8_core_avx512.S: Likewise.
* sysdeps/x86_64/fpu/multiarch/svml_s_sincosf16_core_avx512.S:
Likewise.
* sysdeps/x86_64/fpu/multiarch/svml_s_sincosf4_core_sse4.S: Likewise.
* sysdeps/x86_64/fpu/multiarch/svml_s_sincosf8_core_avx2.S: Likewise.
* sysdeps/x86_64/fpu/svml_d_sincos2_core.S: Likewise.
* sysdeps/x86_64/fpu/svml_d_sincos4_core.S: Likewise.
* sysdeps/x86_64/fpu/svml_d_sincos4_core_avx.S: Likewise.
* sysdeps/x86_64/fpu/svml_d_sincos8_core.S: Likewise.
* sysdeps/x86_64/fpu/svml_s_sincosf16_core.S: Likewise.
* sysdeps/x86_64/fpu/svml_s_sincosf4_core.S: Likewise.
* sysdeps/x86_64/fpu/svml_s_sincosf8_core.S: Likewise.
* sysdeps/x86_64/fpu/svml_s_sincosf8_core_avx.S: Likewise.
* sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c: Use another wrapper
for testing vector sincos with fixed ABI.
* sysdeps/x86_64/fpu/test-double-vlen4-avx2-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-float-vlen8-avx2-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c: Likewise.
* sysdeps/x86_64/fpu/test-double-libmvec-sincos-avx.c: New test.
* sysdeps/x86_64/fpu/test-double-libmvec-sincos-avx2.c: Likewise.
* sysdeps/x86_64/fpu/test-double-libmvec-sincos-avx512.c: Likewise.
* sysdeps/x86_64/fpu/test-double-libmvec-sincos.c: Likewise.
* sysdeps/x86_64/fpu/test-float-libmvec-sincosf-avx.c: Likewise.
* sysdeps/x86_64/fpu/test-float-libmvec-sincosf-avx2.c: Likewise.
* sysdeps/x86_64/fpu/test-float-libmvec-sincosf-avx512.c: Likewise.
* sysdeps/x86_64/fpu/test-float-libmvec-sincosf.c: Likewise.
* sysdeps/x86_64/fpu/Makefile: Added new tests.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 39 +++
sysdeps/x86/fpu/test-math-vector-sincos.h | 98 ++++++
sysdeps/x86_64/fpu/Makefile | 48 +++-
.../fpu/multiarch/svml_d_sincos2_core_sse4.S | 56 ++++-
.../fpu/multiarch/svml_d_sincos4_core_avx2.S | 98 ++++++-
.../fpu/multiarch/svml_d_sincos8_core_avx512.S | 180 ++++++++++-
.../fpu/multiarch/svml_s_sincosf16_core_avx512.S | 310 ++++++++++++++++++-
.../fpu/multiarch/svml_s_sincosf4_core_sse4.S | 80 +++++-
.../fpu/multiarch/svml_s_sincosf8_core_avx2.S | 152 +++++++++-
sysdeps/x86_64/fpu/svml_d_sincos2_core.S | 83 +++++-
sysdeps/x86_64/fpu/svml_d_sincos4_core.S | 125 +++++++-
sysdeps/x86_64/fpu/svml_d_sincos4_core_avx.S | 120 +++++++-
sysdeps/x86_64/fpu/svml_d_sincos8_core.S | 201 ++++++++++++-
sysdeps/x86_64/fpu/svml_s_sincosf16_core.S | 335 +++++++++++++++++++-
sysdeps/x86_64/fpu/svml_s_sincosf4_core.S | 126 +++++++-
sysdeps/x86_64/fpu/svml_s_sincosf8_core.S | 173 ++++++++++-
sysdeps/x86_64/fpu/svml_s_sincosf8_core_avx.S | 179 ++++++++++-
.../x86_64/fpu/test-double-libmvec-sincos-avx.c | 1 +
.../x86_64/fpu/test-double-libmvec-sincos-avx2.c | 1 +
.../x86_64/fpu/test-double-libmvec-sincos-avx512.c | 1 +
sysdeps/x86_64/fpu/test-double-libmvec-sincos.c | 69 ++++
sysdeps/x86_64/fpu/test-double-vlen2-wrappers.c | 6 +-
.../x86_64/fpu/test-double-vlen4-avx2-wrappers.c | 10 +-
sysdeps/x86_64/fpu/test-double-vlen4-wrappers.c | 10 +-
sysdeps/x86_64/fpu/test-double-vlen8-wrappers.c | 10 +-
.../x86_64/fpu/test-float-libmvec-sincosf-avx.c | 1 +
.../x86_64/fpu/test-float-libmvec-sincosf-avx2.c | 1 +
.../x86_64/fpu/test-float-libmvec-sincosf-avx512.c | 1 +
sysdeps/x86_64/fpu/test-float-libmvec-sincosf.c | 69 ++++
sysdeps/x86_64/fpu/test-float-vlen16-wrappers.c | 10 +-
sysdeps/x86_64/fpu/test-float-vlen4-wrappers.c | 10 +-
.../x86_64/fpu/test-float-vlen8-avx2-wrappers.c | 13 +-
sysdeps/x86_64/fpu/test-float-vlen8-wrappers.c | 10 +-
33 files changed, 2587 insertions(+), 39 deletions(-)
create mode 100644 sysdeps/x86/fpu/test-math-vector-sincos.h
create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-sincos-avx.c
create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-sincos-avx2.c
create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-sincos-avx512.c
create mode 100644 sysdeps/x86_64/fpu/test-double-libmvec-sincos.c
create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-sincosf-avx.c
create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-sincosf-avx2.c
create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-sincosf-avx512.c
create mode 100644 sysdeps/x86_64/fpu/test-float-libmvec-sincosf.c
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Glibc-bugs
mailing list