------- Comment #9 from nospamname at web dot de  2009-09-09 14:54 -------
ratecontrol.c line 624 cause crash in my source.assert is done by this
command(should be fbngt)

FBNLT   _ff_rate_estimate_qscale+$716 ;118F015C

q= get_qscale(s, rce, rate_factor, picture_number);
printf("%f\n",q); // (is 613.928)
        if (q < 0)
            return -1;
        TRAP
---->        assert(q>0.0);

the TRAP command is a define to jump in debugger with trap #0.i notice it seem
break the peephole detect and so 
GCC 4.5.0 produce working code when trap is in.see the  FBNGT  
_ff_rate_estimate_qscale+$71A.thats correct and ffmpeg work.

on 2. asm snippet that do not work its.

and the assert is execute

FMOVE.D (A7)+,FP0                    
FMOVE.S FP0,D4                       
FMOVE.S D4,FP4                       
FMOVE.D FP4,-(A7)                    
PEA     _ff_get_2pass_fcode+$24(PC) ;
JSR     _printf      ;11A1563C       
LEA     $20(A7),A7                   
FTST.S  D4                           
FBLT    _ff_rate_estimate_qscale+$5D4
TRAP    #0                           
FTST.S  D4                           
FBNGT   _ff_rate_estimate_qscale+$71A
FMOVE.D FP4,-(A7)                    
MOVE.L  A3,-(A7)                     
MOVE.L  A2,-(A7)    

without this asm command trap #0 the asm code that fail. 

MOVE.L  D1,-(A7)                               
MOVE.L  D0,-(A7)                               
FMOVE.D (A7)+,FP0                              
FMOVE.S FP0,D4                                 
FMOVE.S D4,FP4                                 
FMOVE.D FP4,-(A7)                              
PEA     _ff_get_2pass_fcode+$24(PC) ;118EF9E8  
JSR     _printf      ;11A15638                 
LEA     $20(A7),A7                             
FTST.S  D4                                     
FBLT    _ff_rate_estimate_qscale+$5D0 ;118F0016
FBNLT   _ff_rate_estimate_qscale+$716 ;118F015C
FMOVE.D FP4,-(A7)                              
MOVE.L  A3,-(A7)                               
MOVE.L  A2,-(A7)                               
JSR     _ff_rac_terminate+$19E(PC) ;118ECF6C   
MOVE.L  D1,-(A7)                               
MOVE.L  D0,-(A7)                               
FMOVE.D (A7)+,FP1                              



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41311

Reply via email to