kleopatra999 / webm

Automatically exported from code.google.com/p/webm
0 stars 0 forks source link

Does not compile when VP9 enabled and SSSE3 disabled #854

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What is the expected behavior? What do you see instead?
After configure, make should complete without error.
However, after configure:
./configure --enable-pic --enable-vp8 --enable-vp9 --enable-webm-io 
--enable-shared --enable-mmx --enable-sse --enable-sse2 --disable-sse3 
--disable-sse4_1 --disable-ssse3 --disable-static --enable-multithread

    [LD] libvpx.so.1.3.0
vp9/common/x86/vp9_asm_stubs.c.o: In function `vp9_convolve8_horiz_avx2':
vp9_asm_stubs.c:(.text+0x1ab): undefined reference to 
`vp9_filter_block1d8_h8_intrin_ssse3'
vp9_asm_stubs.c:(.text+0x22b): undefined reference to 
`vp9_filter_block1d4_h8_intrin_ssse3'
vp9_asm_stubs.c:(.text+0x2c1): undefined reference to 
`vp9_filter_block1d16_h2_ssse3'
vp9_asm_stubs.c:(.text+0x34b): undefined reference to 
`vp9_filter_block1d8_h2_ssse3'
vp9_asm_stubs.c:(.text+0x3c3): undefined reference to 
`vp9_filter_block1d4_h2_ssse3'
vp9/common/x86/vp9_asm_stubs.c.o: In function `vp9_convolve8_vert_avx2':
vp9_asm_stubs.c:(.text+0x5c3): undefined reference to 
`vp9_filter_block1d8_v8_intrin_ssse3'
vp9_asm_stubs.c:(.text+0x653): undefined reference to 
`vp9_filter_block1d4_v8_ssse3'
vp9_asm_stubs.c:(.text+0x6f0): undefined reference to 
`vp9_filter_block1d16_v2_ssse3'
vp9_asm_stubs.c:(.text+0x77d): undefined reference to 
`vp9_filter_block1d8_v2_ssse3'
vp9_asm_stubs.c:(.text+0x7f5): undefined reference to 
`vp9_filter_block1d4_v2_ssse3'
collect2: error: ld returned 1 exit status
make[1]: *** [libvpx.so.1.3.0] Error 1
make: *** [.DEFAULT] Error 2

What version are you using? On what operating system?
git version, using ubuntu 14.04

Can you reproduce using the vpxdec or vpxenc tools? What command line are
you using?
no

Please provide any additional information below.

Original issue reported on code.google.com by wnhu...@google.com on 10 Sep 2014 at 5:47

GoogleCodeExporter commented 9 years ago
Unfortunately that bit of AVX2 code depends on SSSE3 functions. I'm checking to 
see if I can work around this. What's your reason for disabling SSSE3?

Original comment by johannko...@google.com on 10 Sep 2014 at 4:50

GoogleCodeExporter commented 9 years ago
does this help:
https://gerrit.chromium.org/gerrit/71521

Original comment by johannko...@google.com on 10 Sep 2014 at 5:29

GoogleCodeExporter commented 9 years ago
Hi,

We are building libvpx chromiumos. However the default USE flags of the gentoo 
ebuild does not include 'ssse3', so the resulting configuration line will have 
'--disable-ssse3'. We want to make ssse3 an option that user can specify and 
not force them to use it. I'll test the patchset tomorrow morning when I go to 
work.

Original comment by wnhu...@chromium.org on 10 Sep 2014 at 5:34

GoogleCodeExporter commented 9 years ago
Does the compiler not support ssse3? Even if it's built, the library uses 
runtime cpu detection.

Original comment by johannko...@google.com on 10 Sep 2014 at 5:37

GoogleCodeExporter commented 9 years ago
The compiler does support sse3. I just try out the patch and I think it is 
fixed. Thanks!

Original comment by wnhu...@chromium.org on 10 Sep 2014 at 5:43

GoogleCodeExporter commented 9 years ago
Fix merged:
https://gerrit.chromium.org/gerrit/gitweb?p=webm%2Flibvpx.git;a=commit;h=8645a53
03971a0e9ac7dc0c589dc493cfd0be69e

Original comment by johannko...@google.com on 11 Sep 2014 at 11:04