[Bug dynamic-link/20139] Upper part of zmm is zeroed if Glibc is built with AS not supporting AVX512

hjl.tools at gmail dot com sourceware-bugzilla@sourceware.org
Tue May 31 13:25:00 GMT 2016


https://sourceware.org/bugzilla/show_bug.cgi?id=20139

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Upper part of zmm is zeroed |Upper part of zmm is zeroed
                   |if Glibc built with         |if Glibc is built with AS
                   |--disable-multi-arch and AS |not supporting AVX512
                   |not supporting AVX512       |

--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> ---
There is

#ifdef HAVE_AVX512_ASM_SUPPORT
# define VEC_SIZE               64
# define VMOVA                  vmovdqa64
# if DL_RUNTIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT
#  define VMOV                  vmovdqa64
# else
#  define VMOV                  vmovdqu64
# endif
# define VEC(i)                 zmm##i
# define _dl_runtime_resolve    _dl_runtime_resolve_avx512
# define _dl_runtime_profile    _dl_runtime_profile_avx512
# include "dl-trampoline.h"
# undef _dl_runtime_resolve
# undef _dl_runtime_profile
# undef VEC
# undef VMOV
# undef VMOVA
# undef VEC_SIZE
#else
strong_alias (_dl_runtime_resolve_avx, _dl_runtime_resolve_avx512)
        .hidden _dl_runtime_resolve_avx512
strong_alias (_dl_runtime_profile_avx, _dl_runtime_profile_avx512)
        .hidden _dl_runtime_profile_avx512
#endif

We can add --enable-avx512 and default it to yes.  It is an error if
HAVE_AVX512_ASM_SUPPORT is undefined and --enable-avx512 is yes.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Glibc-bugs mailing list