Merge "Fix d207 intra prediction SSSE3 functions"

This commit is contained in:
Yunqing Wang 2013-10-21 10:45:20 -07:00 коммит произвёл Gerrit Code Review
Родитель 282157f1e7 dd51042802
Коммит 4afc3a6542
2 изменённых файлов: 8 добавлений и 12 удалений

Просмотреть файл

@ -31,7 +31,7 @@ forward_decls vp9_common_forward_decls
# RECON
#
prototype void vp9_d207_predictor_4x4 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d207_predictor_4x4
specialize vp9_d207_predictor_4x4 $ssse3_x86inc
prototype void vp9_d45_predictor_4x4 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d45_predictor_4x4 $ssse3_x86inc
@ -70,7 +70,7 @@ prototype void vp9_dc_128_predictor_4x4 "uint8_t *dst, ptrdiff_t y_stride, const
specialize vp9_dc_128_predictor_4x4
prototype void vp9_d207_predictor_8x8 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d207_predictor_8x8
specialize vp9_d207_predictor_8x8 $ssse3_x86inc
prototype void vp9_d45_predictor_8x8 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d45_predictor_8x8 $ssse3_x86inc
@ -109,7 +109,7 @@ prototype void vp9_dc_128_predictor_8x8 "uint8_t *dst, ptrdiff_t y_stride, const
specialize vp9_dc_128_predictor_8x8
prototype void vp9_d207_predictor_16x16 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d207_predictor_16x16
specialize vp9_d207_predictor_16x16 $ssse3_x86inc
prototype void vp9_d45_predictor_16x16 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d45_predictor_16x16 $ssse3_x86inc
@ -148,7 +148,7 @@ prototype void vp9_dc_128_predictor_16x16 "uint8_t *dst, ptrdiff_t y_stride, con
specialize vp9_dc_128_predictor_16x16
prototype void vp9_d207_predictor_32x32 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d207_predictor_32x32
specialize vp9_d207_predictor_32x32 $ssse3_x86inc
prototype void vp9_d45_predictor_32x32 "uint8_t *dst, ptrdiff_t y_stride, const uint8_t *above, const uint8_t *left"
specialize vp9_d45_predictor_32x32 $ssse3_x86inc

Просмотреть файл

@ -790,9 +790,8 @@ cglobal d153_predictor_32x32, 4, 5, 8, dst, stride, above, left, goffset
RET
INIT_MMX ssse3
cglobal d207_predictor_4x4, 2, 5, 4, dst, stride, unused, left, goffset
cglobal d207_predictor_4x4, 4, 5, 4, dst, stride, unused, left, goffset
GET_GOT goffsetq
movifnidn leftq, leftmp
movd m0, [leftq] ; abcd [byte]
pshufb m1, m0, [GLOBAL(sh_b1233)] ; bcdd [byte]
pshufb m3, m0, [GLOBAL(sh_b2333)] ; cddd
@ -813,9 +812,8 @@ cglobal d207_predictor_4x4, 2, 5, 4, dst, stride, unused, left, goffset
RET
INIT_XMM ssse3
cglobal d207_predictor_8x8, 2, 5, 4, dst, stride, stride3, left, goffset
cglobal d207_predictor_8x8, 4, 5, 4, dst, stride, stride3, left, goffset
GET_GOT goffsetq
movifnidn leftq, leftmp
movq m3, [leftq] ; abcdefgh [byte]
lea stride3q, [strideq*3]
@ -848,10 +846,9 @@ cglobal d207_predictor_8x8, 2, 5, 4, dst, stride, stride3, left, goffset
RET
INIT_XMM ssse3
cglobal d207_predictor_16x16, 2, 5, 5, dst, stride, stride3, left, goffset
cglobal d207_predictor_16x16, 4, 5, 5, dst, stride, stride3, left, goffset
GET_GOT goffsetq
lea stride3q, [strideq*3]
movifnidn leftq, leftmp
mova m0, [leftq] ; abcdefghijklmnop [byte]
pshufb m1, m0, [GLOBAL(sh_b123456789abcdeff)] ; bcdefghijklmnopp
pshufb m2, m0, [GLOBAL(sh_b23456789abcdefff)]
@ -896,10 +893,9 @@ cglobal d207_predictor_16x16, 2, 5, 5, dst, stride, stride3, left, goffset
REP_RET
INIT_XMM ssse3
cglobal d207_predictor_32x32, 2, 5, 8, dst, stride, stride3, left, goffset
cglobal d207_predictor_32x32, 4, 5, 8, dst, stride, stride3, left, goffset
GET_GOT goffsetq
lea stride3q, [strideq*3]
movifnidn leftq, leftmp
mova m1, [leftq] ; 0-15 [byte]
mova m2, [leftq+16] ; 16-31 [byte]
pshufb m0, m2, [GLOBAL(sh_b23456789abcdefff)]