Comment 13 for bug 2001932

Revision history for this message
In , Hjl-tools (hjl-tools) wrote :

The bug is around

593 testq %rdi, %rdi
594 je L(back_to_loop)

At this point, there may be less than 4 vector length remaining:

Breakpoint 1, __strncmp_avx2 ()
    at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:594
594 je L(back_to_loop)
(gdb) p $r11
$2 = 97
(gdb) next
303 vmovdqa (%rax), %ymm0
(gdb)
304 vmovdqa VEC_SIZE(%rax), %ymm3
(gdb)
305 VPCMPEQ (%rdx), %ymm0, %ymm4
(gdb)
306 VPCMPEQ VEC_SIZE(%rdx), %ymm3, %ymm1
(gdb)
307 VPMINU %ymm0, %ymm4, %ymm4
(gdb)
308 VPMINU %ymm3, %ymm1, %ymm1
(gdb)
309 vmovdqa (VEC_SIZE * 2)(%rax), %ymm2
(gdb)
310 VPMINU %ymm1, %ymm4, %ymm0
(gdb)
311 vmovdqa (VEC_SIZE * 3)(%rax), %ymm3
(gdb)
312 VPCMPEQ (VEC_SIZE * 2)(%rdx), %ymm2, %ymm5
(gdb)
313 VPCMPEQ (VEC_SIZE * 3)(%rdx), %ymm3, %ymm6
(gdb)

Program received signal SIGSEGV, Segmentation fault.
__strncmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:313
313 VPCMPEQ (VEC_SIZE * 3)(%rdx), %ymm3, %ymm6
(gdb)