avcodec/motion_est_template: fix undefined left shift of negative number
authorGanesh Ajjanagadde <gajjanagadde@gmail.com>
Sat, 19 Sep 2015 17:18:16 +0000 (13:18 -0400)
committerMichael Niedermayer <michael@niedermayer.cc>
Sat, 19 Sep 2015 21:52:16 +0000 (23:52 +0200)
This fixes -Wshift-negative-value reported with clang 3.7+, e.g
http://fate.ffmpeg.org/log.cgi?time=20150918181527&log=compile&slot=x86_64-darwin-clang-polly-vectorize-stripmine-3.7.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/motion_est_template.c

index 25bab9d..2141771 100644 (file)
@@ -702,7 +702,7 @@ static int sab_diamond_search(MpegEncContext * s, int *best, int dmin,
 
         key += (1<<(ME_MAP_MV_BITS-1)) + (1<<(2*ME_MAP_MV_BITS-1));
 
-        if((key&((-1)<<(2*ME_MAP_MV_BITS))) != map_generation) continue;
+        if((key&(-(1<<(2*ME_MAP_MV_BITS)))) != map_generation) continue;
 
         minima[j].height= score_map[i];
         minima[j].x= key & ((1<<ME_MAP_MV_BITS)-1); key>>=ME_MAP_MV_BITS;