summaryrefslogtreecommitdiff
path: root/libavcodec/h264.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2010-02-25 14:26:12 +0000
committerMichael Niedermayer <michaelni@gmx.at>2010-02-25 14:26:12 +0000
commit662a5b23707a6c56cd37ad710b1595f7d9f6539b (patch)
treee31f7e91c8901e1c2c1a0af117876d4abe6c4184 /libavcodec/h264.c
parent5b0fb5244d3fb7758521c6988abdc26879c57968 (diff)
Reorder intra4x4_pred_mode so that we can read/write 4 values at once.
3-7 cpu cycles faster Originally committed as revision 22053 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264.c')
-rw-r--r--libavcodec/h264.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 7f9b411639..2d112b0c31 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -54,13 +54,10 @@ static const uint8_t div6[52]={
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];
}
/**