diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-03-15 17:32:46 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-03-15 17:32:46 +0000 |
commit | ffe308e4fcf2f276c87fd405596569ba52ad0a29 (patch) | |
tree | 6d75f028e52fcc225416090f06daaa9a0677758f /sysdeps/unix/sysv/linux/malloc-sysdep.h | |
parent | ff80ec4283493958d7ee9ac8e41ca09837f70bcd (diff) | |
download | glibc-ffe308e4fcf2f276c87fd405596569ba52ad0a29.tar.gz glibc-ffe308e4fcf2f276c87fd405596569ba52ad0a29.tar.xz glibc-ffe308e4fcf2f276c87fd405596569ba52ad0a29.zip |
Fix test-math-vector-sincos.h aliasing.
x86_64 libmvec tests have been failing to build lately with GCC mainline with -Wuninitialized errors, and Markus Trippelsdorf traced this to an aliasing issue <https://sourceware.org/ml/libc-alpha/2017-03/msg00169.html>. This patch fixes the aliasing issue, so that the vectors-of-pointers are initialized using a union instead of pointer casts. This also fixes the testsuite build failures with GCC mainline. Tested for x86_64 (full testsuite with GCC 6; testsuite build with GCC mainline with build-many-glibcs.py). * sysdeps/x86/fpu/test-math-vector-sincos.h (INIT_VEC_PTRS_LOOP): Use a union when storing pointers. (VECTOR_WRAPPER_fFF_2): Do not take address of integer vector and cast result when passing to INIT_VEC_PTRS_LOOP. (VECTOR_WRAPPER_fFF_3): Likewise. (VECTOR_WRAPPER_fFF_4): Likewise.
Diffstat (limited to 'sysdeps/unix/sysv/linux/malloc-sysdep.h')
0 files changed, 0 insertions, 0 deletions