Rémi Denis-Courmont: > Le lauantaina 6. heinäkuuta 2024, 18.17.37 EEST Andreas Rheinhardt a écrit : >> Rémi Denis-Courmont: >>> Note that optimised implementations of these functions will be taken >>> into actual use only if MpegEncContext.dct_unquantize_h263_{inter,intra} >>> are *not* overloaded by existing optimisations. >>> --- >>> >>> libavcodec/h263dsp.c | 25 +++++++++++++++++++++++++ >>> libavcodec/h263dsp.h | 4 ++++ >>> 2 files changed, 29 insertions(+) >>> >>> diff --git a/libavcodec/h263dsp.c b/libavcodec/h263dsp.c >>> index 6a13353499..dc146bf821 100644 >>> --- a/libavcodec/h263dsp.c >>> +++ b/libavcodec/h263dsp.c >>> @@ -19,10 +19,33 @@ >>> >>> #include <stdint.h> >>> >>> #include "libavutil/attributes.h" >>> >>> +#include "libavutil/avassert.h" >>> >>> #include "libavutil/common.h" >>> #include "config.h" >>> #include "h263dsp.h" >>> >>> +static void h263_dct_unquantize_inter_c(int16_t *block, ptrdiff_t len, >>> + int qmul, int qadd) >>> +{ >>> + for (ptrdiff_t i = 0; i <= len; i++) { >> >> In the current code, the unquantizing inter does not need an initial >> check (the compiler can optimize the for-loop to a do-while-like loop). >> This will be lost here. > > If this not the consequence of your own actions... > > You asked: > - to use a signed type there, and > - to avoid the separate initial branch in the intra case. > > And that is exactly how this ends up. You can't have it both ways. >
One can have it both ways: Use a do-while loop. - Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".