http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50185
Bug #: 50185 Summary: [4.7 Regression] FAIL: gcc.target/i386/avx2-vmovmskb-2.c scan-assembler vmovmskb on x86_64-apple-darwin10 Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: testsuite AssignedTo: unassig...@gcc.gnu.org ReportedBy: domi...@lps.ens.fr CC: h...@gcc.gnu.org, kirill.yuk...@intel.com Host: x86_64-apple-darwin10 Target: x86_64-apple-darwin10 Build: x86_64-apple-darwin10 In the tests introduced in revision 178006, scan-assembler vmovmskb fails for gcc.target/i386/avx2-vmovmskb-2.c on x86_64-apple-darwin10. The assembly is .text .align 4,0x90 _do_test: LFB1005: pushq %rbp LCFI0: xorl %eax, %eax movl $1, %esi LCFI1: movq %rsp, %rbp LCFI2: andq $-32, %rsp subq $32, %rsp vmovdqa LC0(%rip), %ymm0 vmovdqa %ymm0, (%rsp) jmp L3 .align 4,0x90 L2: addq $1, %rax cmpq $32, %rax je L7 L3: cmpb $0, (%rsp,%rax) movl %eax, %ecx jns L2 movl %esi, %edi addq $1, %rax sall %cl, %edi orl %edi, %edx cmpq $32, %rax jne L3 L7: vmovdqa LC1(%rip), %ymm0 vpmovmskb %ymm0, %eax cmpl %edx, %eax jne L8 leave LCFI3: vzeroupper ret L8: LCFI4: vzeroupper call _abort ... So there is no vmovmskb, but three vmovdqa. Any idea why?