This is the mail archive of the libc-alpha@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]

Re: Commit 2d63a517e4084ec80403cd9f278690fa8b676cc4


On Fri, Mar 14, 2014 at 8:30 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Thu, Mar 13, 2014 at 7:41 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Thu, Mar 13, 2014 at 6:57 PM, Paul Pluzhnikov <ppluzhnikov@google.com> wrote:
>>> After latest commit:
>>>
>>> commit 2d63a517e4084ec80403cd9f278690fa8b676cc4
>>> Author: Igor Zamyatin <igor.zamyatin@intel.com>
>>> Date:   Thu Mar 13 11:10:22 2014 -0700
>>>
>>>     Save and restore AVX-512 zmm registers to x86-64 ld.so
>>> ...
>>>
>>> "make check" fails like this for me:
>>>
>>>
>>> /tmp/ccJEXrrY.s: Assembler messages:
>>> /tmp/ccJEXrrY.s:47: Error: no such instruction: `vmovdqa64 %zmm0,-176(%rbp)'
>>> /tmp/ccJEXrrY.s:51: Error: bad register name `%zmm0'
>>> /tmp/ccJEXrrY.s:57: Error: no such instruction: `vmovdqa64 %zmm1,-240(%rbp)'
>>> /tmp/ccJEXrrY.s:58: Error: no such instruction: `vmovdqa64 %zmm2,-304(%rbp)'
>>> /tmp/ccJEXrrY.s:59: Error: no such instruction: `vmovdqa64 %zmm3,-368(%rbp)'
>>> /tmp/ccJEXrrY.s:60: Error: no such instruction: `vmovdqa64 %zmm4,-432(%rbp)'
>>> /tmp/ccJEXrrY.s:61: Error: no such instruction: `vmovdqa64 %zmm5,-496(%rbp)'
>>> /tmp/ccJEXrrY.s:62: Error: no such instruction: `vmovdqa64 %zmm6,-560(%rbp)'
>>> /tmp/ccJEXrrY.s:63: Error: no such instruction: `vmovdqa64 %zmm7,-624(%rbp)'
>>> /tmp/ccJEXrrY.s:65: Error: no such instruction: `vmovdqa64 %zmm0,-112(%rbp)'
>>> /tmp/ccJEXrrY.s:84: Error: bad register name `%zmm0'
>>> /tmp/ccJEXrrY.s:90: Error: no such instruction: `vmovdqa64 %zmm0,-112(%rbp)'
>>> ...
>>> make[2]: *** [/build/elf/tst-auditmod10a.os] Error 1
>>>
>>>
>>> Likely my binutils/as are too old. Should this test be conditional?
>>
>> You have GCC 4.9 and a very old binutils.  We didn't test this combination.
>
> I am testing this patch.  It checks AVX-512 assembler support first and
> sets libc_cv_cc_avx512 to $libc_cv_asm_avx512, instead of yes.  GCC
> won't support AVX-512 if assembler doesn't support it.  I will check it
> in if all tests pass.  Sorry for the inconvenience.
>

I checked it in:

commit aa4de9cea5c07d43caeaca9722c2d417e9a2919c
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Mar 14 08:51:25 2014 -0700

    Check AVX-512 assembler support first

    It checks AVX-512 assembler support first and sets libc_cv_cc_avx512 to
    $libc_cv_asm_avx512, instead of yes.  GCC won't support AVX-512 if
    assembler doesn't support it.

      * sysdeps/x86_64/configure.ac: Check AVX-512 assembler support
      first.  Disable AVX-512 GCC support if assembler doesn't support
      it.
      * sysdeps/x86_64/configure: Regenerated.


-- 
H.J.


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