This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/19154] chip vendor who is not "GenuineIntel" or "AuthenticAMD" can not use SSE/AVX optimized functions.


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

Carlos O'Donell <carlos at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |WAITING
                 CC|                            |carlos at redhat dot com

--- Comment #1 from Carlos O'Donell <carlos at redhat dot com> ---
(In reply to Jason Chen from comment #0)
> in glibc/sysdeps/x86_64/multiarch/init-arch.c, __init_cpu_features()
> 
> I notice if a processor's name string is not "GenuineIntel" or
> "AuthenticAMD", then it will go thru this code path
>   else {
>     kind = arch_kind_other;
>   }
> 
> the problem is then x86 processor like VIA Nano will not be able to use the
> sse or avx optimized functions.
> 
> the fix is to change to 
>   else {
>     kind = arch_kind_other;
>     get_common_indeces (&family, &model);
>   }
> 
> so get_common_indeces() will populate __cpu_features with the information
> glibc needs to use sse or avx optimized functions.

You need to get such processor vendors to contribute support to upstream glibc,
or contribute the support yourself by refactoring the code to be able to run
the same CPU checks for different processors.

Set to WAITING for interested parties to contribute new support.

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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]