Ronald S. Bultje <[email protected]> added the comment:

It crashes (also in the C version) in this piece of code:

    __asm__ volatile(
        "1: \n"
        CMUL(%0, %%xmm0, %%xmm1)
        CMUL(%1, %%xmm4, %%xmm5)

Particularly, the second mulps in CMUL. That's a multiply with variables 
in s->tsin/s->tcos, suggesting these aren't properly assigned.


(gdb) print tcos
$1 = <value temporarily unavailable, due to optimizations>
(gdb) print s
$2 = (FFTContext *) 0x2de2490
(gdb) print *s
$3 = {
  nbits = 10, 
  inverse = 1, 
  revtab = 0x1842200, 
  tmp_buf = 0x183ca00, 
  mdct_size = 0, 
  mdct_bits = 0, 
  tcos = 0x1000, 
  tsin = 0xc, 
  fft_permute = 0x182a800, 
  fft_calc = 0x182b800, 
  imdct_calc = 0x45b6f0 <ff_imdct_calc_sse>, 
  imdct_half = 0x45b3f0 <ff_imdct_half_sse>, 
  mdct_calc = 0x225730 <ff_mdct_calc_c>, 
  permutation = 0
}
(gdb) print *s->tcos
$4 = -1.58164644e+38
(gdb) print *s->tsin 
Cannot access memory at address 0xc
(gdb) 

Where are these allocated, and by who? It looks like they're broke here.

________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2082>
________________________________________________

Reply via email to