Inline vp9_get_mv_joint().

Encode time for first 50 frames of bus (speed 0) @ 1500kbps goes from
2min10.9 to 2min10.5, i.e. 0.3% faster overall, basically because we
prevent the call overhead.

Change-Id: I1eab1a95dd3eae282f9b866f1f0b3dcadff073d5
This commit is contained in:
Ronald S. Bultje 2013-07-03 12:04:30 -07:00
parent 8fde07a3ae
commit bd867f1619
2 changed files with 8 additions and 12 deletions

View File

@ -82,17 +82,6 @@ const nmv_context vp9_default_nmv_context = {
},
};
MV_JOINT_TYPE vp9_get_mv_joint(const MV *mv) {
if (mv->row == 0 && mv->col == 0)
return MV_JOINT_ZERO;
else if (mv->row == 0 && mv->col != 0)
return MV_JOINT_HNZVZ;
else if (mv->row != 0 && mv->col == 0)
return MV_JOINT_HZVNZ;
else
return MV_JOINT_HNZVNZ;
}
#define mv_class_base(c) ((c) ? (CLASS0_SIZE << (c + 2)) : 0)
MV_CLASS_TYPE vp9_get_mv_class(int z, int *offset) {

View File

@ -99,7 +99,14 @@ typedef struct {
nmv_component comps[2];
} nmv_context;
MV_JOINT_TYPE vp9_get_mv_joint(const MV *mv);
static INLINE MV_JOINT_TYPE vp9_get_mv_joint(const MV *mv) {
if (mv->row == 0) {
return mv->col == 0 ? MV_JOINT_ZERO : MV_JOINT_HNZVZ;
} else {
return mv->col == 0 ? MV_JOINT_HZVNZ : MV_JOINT_HNZVNZ;
}
}
MV_CLASS_TYPE vp9_get_mv_class(int z, int *offset);
int vp9_get_mv_mag(MV_CLASS_TYPE c, int offset);