[FFmpeg-devel] The state of FATE

Michael Kostylev michael.kostylev
Sat Oct 31 21:35:47 CET 2009


On Sat Oct 31 17:40:25 2009
M?ns Rullg?rd wrote:

> NetBSD, gcc-4.1.3 20080704 prerelease: all tests pass
> - Using --extra-cflags=-D_NETBSD_SOURCE, why?
> FreeBSD, gcc 4.2.5 20090325: all pass
> - Using --extra-cflags=-D__BSD_VISIBLE, why?
> 
> x86_64
> ------
> 
> FreeBSD, gcc 4.2.5 20090325 and clang 1.1: all pass
> - Using --extra-cflags=-D__BSD_VISIBLE, why?

Already discussed. This is almost the same feature control like
__EXTENSIONS__ on SunOS. Not to mention it was considered a bug in
the system headers.

> Linux, suncc 5.10: all pass
> - Using various cflags hacks, patch pending.

--arch=generic due to a compiler bug, in addition.

x86_32
------
Linux, suncc 5.10: 230/311
The H264 test fail because of crash in get_cabac_bypass_sign()

Program received signal SIGSEGV, Segmentation fault.
0x08173288 in get_cabac_bypass_sign ()

#0  0x08173288 in get_cabac_bypass_sign ()
#1  0x08182741 in decode_cabac_residual_internal ()
#2  0xf7fab5d4 in ?? ()

0x0817324c <get_cabac_bypass_sign+0>:   push   %ebx
0x0817324d <get_cabac_bypass_sign+1>:   mov    0x8(%esp),%eax
0x08173251 <get_cabac_bypass_sign+5>:   mov    0xc(%esp),%ecx
0x08173255 <get_cabac_bypass_sign+9>:   mov    0x4(%eax),%ebx
0x08173258 <get_cabac_bypass_sign+12>:  mov    0x0(%eax),%eax
0x0817325b <get_cabac_bypass_sign+15>:  shl    $0x11,%ebx
0x0817325e <get_cabac_bypass_sign+18>:  add    %eax,%eax
0x08173260 <get_cabac_bypass_sign+20>:  sub    %ebx,%eax
0x08173262 <get_cabac_bypass_sign+22>:  cltd   
0x08173263 <get_cabac_bypass_sign+23>:  and    %edx,%ebx
0x08173265 <get_cabac_bypass_sign+25>:  add    %ebx,%eax
0x08173267 <get_cabac_bypass_sign+27>:  xor    %edx,%ecx
0x08173269 <get_cabac_bypass_sign+29>:  sub    %edx,%ecx
0x0817326b <get_cabac_bypass_sign+31>:  test   %ax,%ax
0x0817326e <get_cabac_bypass_sign+34>:  jne    0x8173288 <get_cabac_bypass_sign+60>
0x08173270 <get_cabac_bypass_sign+36>:  mov    0x10(%eax),%ebx
0x08173273 <get_cabac_bypass_sign+39>:  sub    $0xffff,%eax
0x08173278 <get_cabac_bypass_sign+44>:  movzwl (%ebx),%edx
0x0817327b <get_cabac_bypass_sign+47>:  bswap  %edx
0x0817327d <get_cabac_bypass_sign+49>:  shr    $0xf,%edx
0x08173280 <get_cabac_bypass_sign+52>:  add    $0x2,%ebx
0x08173283 <get_cabac_bypass_sign+55>:  add    %edx,%eax
0x08173285 <get_cabac_bypass_sign+57>:  mov    %ebx,0x10(%eax)
0x08173288 <get_cabac_bypass_sign+60>:  mov    %eax,0x0(%eax)
0x0817328b <get_cabac_bypass_sign+63>:  mov    %ecx,0xc(%esp)
0x0817328f <get_cabac_bypass_sign+67>:  mov    0xc(%esp),%eax
0x08173293 <get_cabac_bypass_sign+71>:  pop    %ebx
0x08173294 <get_cabac_bypass_sign+72>:  ret    

eax            0x2218000        35749888
ecx            0xffffb000       -20480
edx            0x0      0
ebx            0x0      0
esp            0xffffd078       0xffffd078
ebp            0xf7df9a66       0xf7df9a66
esi            0x1      1
edi            0xc      12
eip            0x8173288        0x8173288 <get_cabac_bypass_sign+60>
eflags         0x10286  [ PF SF IF RF ]
cs             0x23     35
ss             0x2b     43
ds             0x2b     43
es             0x2b     43
fs             0x0      0
gs             0x63     99

My question to experts is whether %ebx is really available.

Michael



More information about the ffmpeg-devel mailing list