aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/ivi.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-08-04 02:34:11 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2018-08-12 21:48:15 +0200
commitbf97d11b0881aae26410cb938c2bdd53585e7398 (patch)
treebed9307cb7f90e60eaf03729054f792f7f52c939 /libavcodec/ivi.c
parent82920bf49434d14ed0144319f785cc74a1534fc5 (diff)
downloadffmpeg-bf97d11b0881aae26410cb938c2bdd53585e7398.tar.gz
avcodec/ivi: Factor width dereference out of the loops in ivi_output_plane()
396078 -> 268468 dezicycles Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/ivi.c')
-rw-r--r--libavcodec/ivi.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libavcodec/ivi.c b/libavcodec/ivi.c
index ebb7f03007..b23d4af27e 100644
--- a/libavcodec/ivi.c
+++ b/libavcodec/ivi.c
@@ -914,13 +914,14 @@ static void ivi_output_plane(IVIPlaneDesc *plane, uint8_t *dst, ptrdiff_t dst_pi
for (y = 0; y < plane->height; y++) {
int m = 0;
- for (x = 0; x < plane->width; x++) {
+ int w = plane->width;
+ for (x = 0; x < w; x++) {
int t = src[x] + 128;
dst[x] = t;
m |= t;
}
if (m & ~255)
- for (x = 0; x < plane->width; x++)
+ for (x = 0; x < w; x++)
dst[x] = av_clip_uint8(src[x] + 128);
src += pitch;
dst += dst_pitch;