[x264-devel] Crash with x264 core:120 r2120 0c7dab9

游子德 tedyu002 at gmail.com
Thu Dec 8 12:50:45 CET 2011


I encode file with newest x264 revision.
But I get crash with any input file.
*
Below is gcc infomation*

Using built-in specs.
COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with:
/var/tmp/portage/sys-devel/gcc-4.5.3-r1/work/gcc-4.5.3/configure
--prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3
--includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include
--datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3
--mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/man
--infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/info
--with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4
--host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec
--disable-fixed-point --with-ppl --with-cloog --disable-ppl-version-check
--with-cloog-include=/usr/include/cloog-ppl --disable-lto --enable-nls
--without-included-gettext --with-system-zlib --disable-werror
--enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp
--enable-libgomp
--with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/python
--enable-checking=release --enable-java-awt=gtk --enable-objc-gc
--enable-languages=c,c++,java,objc,obj-c++,fortran --enable-shared
--enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu
--with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.5.3-r1
p1.0, pie-0.4.5'
Thread model: posix
gcc version 4.5.3 (Gentoo 4.5.3-r1 p1.0, pie-0.4.5)
*
Below is compile message.*
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(dct.o)(.text+0x2caf): unresolvable R_X86_64_32S relocation
against symbol `x264_dct8_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(dct.o)(.text+0x2cf0): unresolvable R_X86_64_32S relocation
against symbol `x264_dct4_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(dct.o)(.debug_info+0x4e4a): unresolvable R_X86_64_64 relocation
against symbol `x264_dct4_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(dct.o)(.debug_info+0x4e60): unresolvable R_X86_64_64 relocation
against symbol `x264_dct8_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(analyse.o)(.text+0x13692): unresolvable R_X86_64_32S relocation
against symbol `x264_dct4_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(analyse.o)(.text+0x13f17): unresolvable R_X86_64_32S relocation
against symbol `x264_dct4_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(analyse.o)(.text+0x1455b): unresolvable R_X86_64_32S relocation
against symbol `x264_dct8_weight2_zigzag'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
libx264.a(analyse.o)(.text+0x14eb2): unresolvable R_X86_64_32S relocation
against symbol `x264_dct8_weight2_zigzag

*and debug message*

Program received signal SIGSEGV, Segmentation fault.
0x0000000000441285 in x264_dct_init_weights () at common/dct.c:647
647                 x264_dct4_weight2_zigzag[j][i] = x264_dct4_weight2_tab[
x264_zigzag_scan4[j][i] ];

*(gdb) bt*
#0  0x0000000000441285 in x264_dct_init_weights () at common/dct.c:647
#1  0x0000000000426e97 in x264_encoder_open_120 (param=<value optimized
out>)
    at encoder/encoder.c:1184
#2  0x000000000040a606 in encode (argc=<value optimized out>, argv=<value
optimized out>)
    at x264.c:1770
#3  main (argc=<value optimized out>, argv=<value optimized out>) at
x264.c:295

*(gdb) disass $pc-32,$pc+32*
Dump of assembler code from 0x441265 to 0x4412a5:
   0x0000000000441265 <x264_dct_init+446>:      (bad)
   0x0000000000441266 <x264_dct_init+447>:      leaveq
   0x0000000000441267 <x264_dct_init+448>:      rex.WX add %cl,-0x39(%rax)
   0x000000000044126b <x264_dct_init+452>:      rex.RX (bad)
   0x000000000044126d <x264_dct_init+454>:      add    0x0(%rcx),%cl
   0x0000000000441271 <x264_dct_init+458>:      repz retq
   0x0000000000441273 <x264_dct_init_weights+0>:        mov    $0x0,%edi
   0x0000000000441278 <x264_dct_init_weights+5>:        jmp    0x4412d4
<x264_dct_init_weights+97>
   0x000000000044127a <x264_dct_init_weights+7>:        movzbl (%rcx),%esi
   0x000000000044127d <x264_dct_init_weights+10>:       movzwl
0x506f80(%rsi,%rsi,1),%esi
=> 0x0000000000441285 <x264_dct_init_weights+18>:       mov    %si,(%rdx)
   0x0000000000441288 <x264_dct_init_weights+21>:       inc    %rcx
   0x000000000044128b <x264_dct_init_weights+24>:       add    $0x2,%rdx
   0x000000000044128f <x264_dct_init_weights+28>:       dec    %eax
   0x0000000000441291 <x264_dct_init_weights+30>:       jne    0x44127a
<x264_dct_init_weights+7>
   0x0000000000441293 <x264_dct_init_weights+32>:       movslq %edi,%rax
   0x0000000000441296 <x264_dct_init_weights+35>:       mov    %rax,%rcx
   0x0000000000441299 <x264_dct_init_weights+38>:       shl    $0x6,%rcx
   0x000000000044129d <x264_dct_init_weights+42>:       add
$0x506fa0,%rcx
   0x00000000004412a4 <x264_dct_init_weights+49>:       shl    $0x7,%rax

*(gdb) info all-registers*
rax            0x10     16
rbx            0x7bdac0 8116928
rcx            0x506f60 5271392
rdx            0x0      0
rsi            0x320    800
rdi            0x0      0
rbp            0x7c9610 0x7c9610
rsp            0x7fffffffc358   0x7fffffffc358
r8             0x34     52
r9             0x7f     127
r10            0x398    920
r11            0x7e     126
r12            0x7c95e0 8164832
r13            0x7fffffffce60   140737488342624
r14            0x7fffffffcda0   140737488342432
r15            0x7fffffffce28   140737488342568
rip            0x441285 0x441285 <x264_dct_init_weights+18>
eflags         0x10256  [ PF AF ZF IF RF ]
cs             0x33     51
ss             0x2b     43
ds             0x0      0
es             0x0      0
fs             0x0      0
gs             0x0      0
st0            0        (raw 0x00000000000000000000)
st1            0        (raw 0x00000000000000000000)
st2            0        (raw 0x00000000000000000000)
st3            0        (raw 0x00000000000000000000)
st4            0        (raw 0x00000000000000000000)
st5            0        (raw 0x00000000000000000000)
st6            0        (raw 0x00000000000000000000)
st7            0        (raw 0x00000000000000000000)
fctrl          0x37f    895
fstat          0x0      0
ftag           0xffff   65535
fiseg          0x0      0
fioff          0x0      0
foseg          0x0      0
fooff          0x0      0
fop            0x0      0
xmm0           {v4_float = {0x0, 0x5, 0x0, 0x0}, v2_double = {0xf85, 0x0},
v16_int8 = {0x85, 0xa0,
    0x9e, 0xfa, 0xc5, 0xa, 0xaf, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {0xa085,
    0xfa9e, 0xac5, 0x40af, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0xfa9ea085,
0x40af0ac5, 0x0, 0x0},
  v2_int64 = {0x40af0ac5fa9ea085, 0x0}, uint128 =
0x000000000000000040af0ac5fa9ea085}
xmm1           {v4_float = {0x0, 0x6, 0x0, 0x0}, v2_double = {0x7fff, 0x0},
v16_int8 = {0x0, 0x0,
    0x0, 0x0, 0xc0, 0xff, 0xdf, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {0x0,
    0x0, 0xffc0, 0x40df, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x40dfffc0,
0x0, 0x0}, v2_int64 = {
    0x40dfffc000000000, 0x0}, uint128 = 0x000000000000000040dfffc000000000}
xmm2           {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x3d, 0x53,
    0xce, 0xbc, 0xf8, 0xfd, 0xe9, 0x3f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {
    0x533d, 0xbcce, 0xfdf8, 0x3fe9, 0x0, 0x0, 0x0, 0x0}, v4_int32 =
{0xbcce533d, 0x3fe9fdf8, 0x0,
    0x0}, v2_int64 = {0x3fe9fdf8bcce533d, 0x0}, uint128 =
0x00000000000000003fe9fdf8bcce533d}
xmm3           {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0},
v16_int8 = {0x33, 0x33,
    0x33, 0x33, 0x33, 0x33, 0xfb, 0x3f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {
    0x3333, 0x3333, 0x3333, 0x3ffb, 0x0, 0x0, 0x0, 0x0}, v4_int32 =
{0x33333333, 0x3ffb3333, 0x0,
    0x0}, v2_int64 = {0x3ffb333333333333, 0x0}, uint128 =
0x00000000000000003ffb333333333333}
xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
    0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0,
    0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
xmm5           {v4_float = {0x0, 0x14, 0x0, 0x0}, v2_double = {0x8000001,
0x0}, v16_int8 = {0x0,
    0x0, 0x0, 0x2, 0x0, 0x0, 0xa0, 0x41, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {0x0,
    0x200, 0x0, 0x41a0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x2000000,
0x41a00000, 0x0, 0x0},
  v2_int64 = {0x41a0000002000000, 0x0}, uint128 =
0x000000000000000041a0000002000000}
xmm6           {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0},
v16_int8 = {0x0, 0x0, 0x0,
    0x30, 0x33, 0x33, 0xfb, 0x3f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0},
v8_int16 = {0x0, 0x3000,
    0x3333, 0x3ffb, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x30000000,
0x3ffb3333, 0x0, 0x0}, v2_int64 = {
    0x3ffb333330000000, 0x0}, uint128 = 0x00000000000000003ffb333330000000}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0,
    0x98, 0x99, 0x99, 0x49, 0x3e, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0},
v8_int16 = {0x0, 0x9800,
    0x9999, 0x3e49, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x98000000,
0x3e499999, 0x0, 0x0}, v2_int64 = {
    0x3e49999998000000, 0x0}, uint128 = 0x00000000000000003e49999998000000}
xmm8           {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0,
    0x0, 0x0, 0x0, 0xe0, 0x3f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0},
v8_int16 = {0x0, 0x0, 0x0,
    0x3fe0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x3fe00000, 0x0, 0x0},
v2_int64 = {
    0x3fe0000000000000, 0x0}, uint128 = 0x00000000000000003fe0000000000000}
xmm9           {v4_float = {0x0, 0xd0, 0x0, 0x0}, v2_double =
{0x4380663abb8000, 0x0}, v16_int8 = {
    0x0, 0xe0, 0xae, 0x8e, 0x19, 0xe0, 0x50, 0x43, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0},
  v8_int16 = {0xe000, 0x8eae, 0xe019, 0x4350, 0x0, 0x0, 0x0, 0x0}, v4_int32
= {0x8eaee000,
    0x4350e019, 0x0, 0x0}, v2_int64 = {0x4350e0198eaee000, 0x0},
  uint128 = 0x00000000000000004350e0198eaee000}
xmm10          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x80,
    0x39, 0x3b, 0x9e, 0xbc, 0x7a, 0x3c, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {
    0x8000, 0x3b39, 0xbc9e, 0x3c7a, 0x0, 0x0, 0x0, 0x0}, v4_int32 =
{0x3b398000, 0x3c7abc9e, 0x0,
    0x0}, v2_int64 = {0x3c7abc9e3b398000, 0x0}, uint128 =
0x00000000000000003c7abc9e3b398000}
xmm11          {v4_float = {0x0, 0x2, 0x0, 0x0}, v2_double = {0x3, 0x0},
v16_int8 = {0x3d, 0x53,
    0xce, 0xbc, 0xf8, 0xfd, 0x9, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v8_int16 = {0x533d,
    0xbcce, 0xfdf8, 0x4009, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0xbcce533d,
0x4009fdf8, 0x0, 0x0},
  v2_int64 = {0x4009fdf8bcce533d, 0x0}, uint128 =
0x00000000000000004009fdf8bcce533d}
xmm12          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
    0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0,
    0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
xmm13          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
    0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0,
    0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
xmm14          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
    0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0,
    0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
xmm15          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {
    0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0,
    0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 =
0x00000000000000000000000000000000}
mxcsr          0x21fa0  [ PE IM DM ZM OM UM PM #17 ]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x264-devel/attachments/20111208/56231f21/attachment-0001.html>


More information about the x264-devel mailing list