[LLVMbugs] [Bug 13253] New: clang doesn't support x86 SSE4 *blend* asm instructions.

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Jul 2 04:15:22 PDT 2012


http://llvm.org/bugs/show_bug.cgi?id=13253

             Bug #: 13253
           Summary: clang doesn't support x86 SSE4 *blend* asm
                    instructions.
           Product: clang
           Version: 3.1
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: LLVM Codegen
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: valery.khromov at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


$ cat 3.c
int
main()
{
    asm volatile ( "pblendvb %xmm0, %xmm1, %xmm2");
    return 0;
}

$ gcc45 -O0 -ggdb -Wall -W -msse4 -m64 3.c -c

$ objdump -d 3.o
...
0000000000000000 <main>:
   0:    55                       push   %rbp
   1:    48 89 e5                 mov    %rsp,%rbp
   4:    66 0f 38 10 d1           pblendvb %xmm0,%xmm1,%xmm2
   9:    b8 00 00 00 00           mov    $0x0,%eax
   e:    c9                       leaveq 
   f:    c3                       retq   

$ clang -O0 -ggdb -Wall -W -msse4 -m64 3.c -c
3.c:4:20: error: invalid operand for instruction
    asm volatile ( "pblendvb %xmm0, %xmm1, %xmm2");
                   ^
<inline asm>:1:25: note: instantiated into assembly here
        pblendvb %xmm0, %xmm1, %xmm2
                               ^~~~~
1 error generated.

$ gcc45 --version
gcc45 (FreeBSD Ports Collection) 4.5.3
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ clang --version
clang version 3.1 (trunk)
Target: amd64-portbld-freebsd8.2
Thread model: posix

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list