2012/1/5 Jason Garrett-Glaser <ja...@x264.com>:
> +    int avail[6*8] = {0};
[...]
> +    if(r->avail_cache[9])
> +        avail[24] = avail[32] = 1;
>
> You set all these values, but avail[] is never used.

Indeed, I ddin't noticed that. Maybe Kostya still remembers why he did
that like this? A forgotten attempt at optimizing.

> Not part of this patch, but is it possible to do the same optimization
> here that I did in VP8: have idct clear the block, thus avoiding the
> need for a separate clear_block call?

I indeed did that later in the patch series, but sending it all at
once could make it difficult to review. Up to you.

> +        for(i = 0; i < 4; i++, cbp >>= 1){
> +            uint8_t *pdst;
> +            if(!(cbp & 1)) continue;
>
> Here's a really evil way of doing this that I used in VP8.
>
> int tmpcbp = cbp&0xf;
> for(; tmpcbp ; tmpcbp >>= 1){

You mean the loop control, not the continue statement right?
Otherwise, yes, I could apply this in several places and fix how I
rely on the i/j loop counters for some computations.

However, if you allow me, I would prefer not doing this if it causes
conflicts when editing this commit and rebasing.

Best regards,
Christophe
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to