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/13753] [2.15 backport] Really fix AVX tests


http://sourceware.org/bugzilla/show_bug.cgi?id=13753

--- Comment #6 from Allan McRae <allan at archlinux dot org> 2012-05-10 22:02:58 UTC ---
@Jeff: I have access to a Xen system to test these issues, so if you post a
link to the patch I can test.

Note that with the two original patches I still get issues in strcasecmp() with
illegal instructions with AVX:

#0  0x00007ffff76cd0ff in __strcasecmp_l_avx () from ./lib/libc.so.6

   0x00007ffff76cd0f7 <+23>:    and    $0x3f,%rcx
   0x00007ffff76cd0fb <+27>:    and    $0x3f,%rax
=> 0x00007ffff76cd0ff <+31>:    vmovdqa 0x46979(%rip),%xmm4        #
0x7ffff7713a80
   0x00007ffff76cd107 <+39>:    vmovdqa 0x469a1(%rip),%xmm5        #
0x7ffff7713ab0
   0x00007ffff76cd10f <+47>:    vmovdqa 0x46989(%rip),%xmm6        #
0x7ffff7713aa0

I will test with the additional patches linked in this bug report.


BTW, just to confirm how this should be done, the intel manual [1] states:
1) Detect CPUID.1:ECX.OSXSAVE[bit 27] = 1 (XGETBV enabled for application use1)
2) Issue XGETBV and verify that XCR0[2:1] = â11bâ (XMM state and YMM state are
enabled by OS).
3) detect CPUID.1:ECX.AVX[bit 28] = 1 (AVX instructions supported).
(Step 3 can be done in any order relative to 1 and 2)

http://www.intel.com/content/www/us/en/architecture-and-technology/64-ia-32-architectures-software-developer-manual-325462-rmver.html
- section 13.5

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- 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]