clangcl fail on compare_win.cc
GoogleCodeExporter opened this issue · comments
What steps will reproduce the problem?
1. change ifdefs so compare_win.cc is used for clangcl. See attached
2. compile with clangcl
setlocal
::set LLVM_REPO_URL=svn://svn.chromium.org/llvm-project
set GYP_DEFINES=buildtype=Official clang=1 target_arch=ia32 libyuv_enable_svn=1
call python tools\clang\scripts\update.py
if not exist out\Release\build.ninja call python gyp_libyuv -fninja
-Gconfig=Release libyuv_test.gyp
set GYP_DEFINES=buildtype=Dev clang=1 target_arch=ia32 libyuv_enable_svn=1
if not exist out\Debug\build.ninja call python gyp_libyuv -fninja
-Gconfig=Debug libyuv_test.gyp
ninja -d keeprsp -v -C out\Release
ninja -C out\Debug
What is the expected output?
Should compile and produce same code as Visual C
What do you see instead?
d:\src\libyuv\libyuv>ninja -C out\Debug
ninja: Entering directory `out\Debug'
[1/7] CXX obj\source\libyuv.compare_win.obj
..\..\source\compare_win.cc(58,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(6,2) : note(clang): instantiated into assembly here
movdqa xmm6, dword ptr kHash16x33
^
..\..\source\compare_win.cc(58,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(15,2) : note(clang): instantiated into assembly here
movdqa xmm5, dword ptr kHashMul0
^
..\..\source\compare_win.cc(58,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(25,2) : note(clang): instantiated into assembly here
movdqa xmm5, dword ptr kHashMul1
^
..\..\source\compare_win.cc(58,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(33,2) : note(clang): instantiated into assembly here
movdqa xmm5, dword ptr kHashMul2
^
..\..\source\compare_win.cc(58,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(42,2) : note(clang): instantiated into assembly here
movdqa xmm5, dword ptr kHashMul3
^
..\..\source\compare_win.cc(109,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(5,2) : note(clang): instantiated into assembly here
movdqa xmm6, dword ptr kHash16x33
^
..\..\source\compare_win.cc(109,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(10,2) : note(clang): instantiated into assembly here
pmulld xmm3, dword ptr kHashMul0
^
..\..\source\compare_win.cc(109,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(12,2) : note(clang): instantiated into assembly here
pmulld xmm4, dword ptr kHashMul1
^
..\..\source\compare_win.cc(109,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(14,2) : note(clang): instantiated into assembly here
pmulld xmm2, dword ptr kHashMul2
^
..\..\source\compare_win.cc(109,3) : error(clang): invalid operand for
instruction
__asm {
^
<inline asm>(16,2) : note(clang): instantiated into assembly here
pmulld xmm1, dword ptr kHashMul3
^
10 errors generated.
clang-cl.exe: warning: falling back to
c:\src\depot_tools\win_toolchain\vs2013_files\win8sdk\bin\..\..\VC\bin\amd64_x86
\cl.exe
[7/7] LINK_EMBED libyuv_unittest.exe
Please use labels and text to provide additional information.
Original issue reported on code.google.com by fbarch...@chromium.org
on 14 Aug 2015 at 11:20
Attachments:
fixed in r1466
Original comment by fbarch...@chromium.org
on 18 Aug 2015 at 6:23
- Changed state: Fixed