summaryrefslogtreecommitdiff
path: root/vp8/encoder/rdopt.c
diff options
context:
space:
mode:
authorJohn Koleszar <jkoleszar@google.com>2011-03-11 11:35:38 -0500
committerJohn Koleszar <jkoleszar@google.com>2011-03-11 13:04:50 -0500
commit27972d2c1d53a0ff831c1f05d40a3720cf45aec7 (patch)
treef3f009add4dfc70fbc1f58060de06878a638c274 /vp8/encoder/rdopt.c
parent5db0eeea21a33820cb4e0adf171ed60868666bb6 (diff)
downloadlibvpx-27972d2c1d53a0ff831c1f05d40a3720cf45aec7.tar
libvpx-27972d2c1d53a0ff831c1f05d40a3720cf45aec7.tar.gz
libvpx-27972d2c1d53a0ff831c1f05d40a3720cf45aec7.tar.bz2
libvpx-27972d2c1d53a0ff831c1f05d40a3720cf45aec7.zip
Move build_intra_predictors_mby to RTCD framework
The vp8_build_intra_predictors_mby and vp8_build_intra_predictors_mby_s functions had global function pointers rather than using the RTCD framework. This can show up as a potential data race with tools such as helgrind. See https://bugzilla.mozilla.org/show_bug.cgi?id=640935 for an example. Change-Id: I29c407f828ac2bddfc039f852f138de5de888534
Diffstat (limited to 'vp8/encoder/rdopt.c')
-rw-r--r--vp8/encoder/rdopt.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/vp8/encoder/rdopt.c b/vp8/encoder/rdopt.c
index b0dcfe0a4..c706c575f 100644
--- a/vp8/encoder/rdopt.c
+++ b/vp8/encoder/rdopt.c
@@ -745,7 +745,8 @@ int vp8_rd_pick_intra16x16mby_mode(VP8_COMP *cpi,
{
x->e_mbd.mode_info_context->mbmi.mode = mode;
- vp8_build_intra_predictors_mby_ptr(&x->e_mbd);
+ RECON_INVOKE(&cpi->common.rtcd.recon, build_intra_predictors_mby)
+ (&x->e_mbd);
macro_block_yrd(x, &ratey, &distortion, IF_RTCD(&cpi->rtcd.encodemb));
rate = ratey + x->mbmode_cost[x->e_mbd.frame_type]
@@ -2038,7 +2039,8 @@ int vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int
case H_PRED:
case TM_PRED:
x->e_mbd.mode_info_context->mbmi.ref_frame = INTRA_FRAME;
- vp8_build_intra_predictors_mby_ptr(&x->e_mbd);
+ RECON_INVOKE(&cpi->common.rtcd.recon, build_intra_predictors_mby)
+ (&x->e_mbd);
macro_block_yrd(x, &rate_y, &distortion, IF_RTCD(&cpi->rtcd.encodemb)) ;
rate2 += rate_y;
distortion2 += distortion;