]> granicus.if.org Git - libvpx/commitdiff
change to avoid IOC
authorYaowu Xu <yaowu@google.com>
Fri, 24 Jan 2014 20:06:39 +0000 (12:06 -0800)
committerYaowu Xu <yaowu@google.com>
Fri, 24 Jan 2014 20:49:44 +0000 (12:49 -0800)
SSE for a 64x64 block with 3 planes can go as high as 3*2^28. So left
shift by 4 may overflow 32 bit int.

Change-Id: I63c84aa56894788bb987299badabbd7cc6fd0be6

vp9/encoder/vp9_rdopt.c

index 5f2f8a819fdbbc6663509bc8f95ee4df363dac25..b7ea34679d2759dc3e40995545ace7aaf76cd9e0 100644 (file)
@@ -428,7 +428,7 @@ static void model_rd_for_sb(VP9_COMP *cpi, BLOCK_SIZE bsize,
   }
 
   *out_rate_sum = rate_sum;
-  *out_dist_sum = dist_sum << 4;
+  *out_dist_sum = (int64_t)dist_sum << 4;
 }
 
 static void model_rd_for_sb_y_tx(VP9_COMP *cpi, BLOCK_SIZE bsize,