vc1dsp: mark put/avg_vc1_mspel_mc() always_inline
authorMans Rullgard <mans@mansr.com>
Thu, 7 Jun 2012 13:20:44 +0000 (14:20 +0100)
committerMans Rullgard <mans@mansr.com>
Fri, 8 Jun 2012 08:40:07 +0000 (09:40 +0100)
This ensures that these functions are inlined into the per-position
entry points, allowing constant propagation as needed for proper
optimisation.

18% faster VC1 decoding on Cortex-A9.

Signed-off-by: Mans Rullgard <mans@mansr.com>
libavcodec/vc1dsp.c

index b40824b..7b50af6 100644 (file)
@@ -561,7 +561,7 @@ static av_always_inline int vc1_mspel_filter(const uint8_t *src, int stride, int
 /** Function used to do motion compensation with bicubic interpolation
  */
 #define VC1_MSPEL_MC(OP, OPNAME)\
 /** Function used to do motion compensation with bicubic interpolation
  */
 #define VC1_MSPEL_MC(OP, OPNAME)\
-static void OPNAME ## vc1_mspel_mc(uint8_t *dst, const uint8_t *src, int stride, int hmode, int vmode, int rnd)\
+static av_always_inline void OPNAME ## vc1_mspel_mc(uint8_t *dst, const uint8_t *src, int stride, int hmode, int vmode, int rnd)\
 {\
     int     i, j;\
 \
 {\
     int     i, j;\
 \