diff h264.c @ 11286:db94c9bc5694 libavcodec

Reorder intra4x4_pred_mode so that we can read/write 4 values at once. 3-7 cpu cycles faster
author michael
date Thu, 25 Feb 2010 14:26:12 +0000
parents 613370892df2
children 43a179c59c57
line wrap: on
line diff
--- a/h264.c	Thu Feb 25 14:02:39 2010 +0000
+++ b/h264.c	Thu Feb 25 14:26:12 2010 +0000
@@ -54,13 +54,10 @@
 void ff_h264_write_back_intra_pred_mode(H264Context *h){
     int8_t *mode= h->intra4x4_pred_mode + h->mb2br_xy[h->mb_xy];
 
-    mode[0]= h->intra4x4_pred_mode_cache[7+8*1];
-    mode[1]= h->intra4x4_pred_mode_cache[7+8*2];
-    mode[2]= h->intra4x4_pred_mode_cache[7+8*3];
-    mode[3]= h->intra4x4_pred_mode_cache[7+8*4];
-    mode[4]= h->intra4x4_pred_mode_cache[4+8*4];
-    mode[5]= h->intra4x4_pred_mode_cache[5+8*4];
-    mode[6]= h->intra4x4_pred_mode_cache[6+8*4];
+    AV_COPY32(mode, h->intra4x4_pred_mode_cache + 4 + 8*4);
+    mode[4]= h->intra4x4_pred_mode_cache[7+8*3];
+    mode[5]= h->intra4x4_pred_mode_cache[7+8*2];
+    mode[6]= h->intra4x4_pred_mode_cache[7+8*1];
 }
 
 /**