diff options
author | Scott LaVarnway <slavarnway@google.com> | 2010-10-07 11:43:19 -0400 |
---|---|---|
committer | Scott LaVarnway <slavarnway@google.com> | 2010-10-07 11:43:19 -0400 |
commit | d860f685b85ffafb32dfc20da53aaa81cb62c5c5 (patch) | |
tree | 5b404f5404c4f2ac33828a229c329b8f323fb6c6 /vp8/encoder/x86/x86_csystemdependent.c | |
parent | d338d14c6bcf1bd9f9d028cf7ee177503076da47 (diff) | |
download | libvpx-d860f685b85ffafb32dfc20da53aaa81cb62c5c5.tar libvpx-d860f685b85ffafb32dfc20da53aaa81cb62c5c5.tar.gz libvpx-d860f685b85ffafb32dfc20da53aaa81cb62c5c5.tar.bz2 libvpx-d860f685b85ffafb32dfc20da53aaa81cb62c5c5.zip |
Added vp8_fast_quantize_b_sse2
Moved vp8_fast_quantize_b_sse from quantize_mmx.asm into
quantize_sse2.asm and renamed. Updated the assembly code to
match the C version.
Change-Id: I1766d9e1ca60e173f65badc0ca0c160c2b51b200
Diffstat (limited to 'vp8/encoder/x86/x86_csystemdependent.c')
-rw-r--r-- | vp8/encoder/x86/x86_csystemdependent.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/vp8/encoder/x86/x86_csystemdependent.c b/vp8/encoder/x86/x86_csystemdependent.c index 18dc49cd4..7490a8add 100644 --- a/vp8/encoder/x86/x86_csystemdependent.c +++ b/vp8/encoder/x86/x86_csystemdependent.c @@ -88,24 +88,22 @@ void vp8_short_fdct8x4_sse2(short *input, short *output, int pitch) vp8_short_fdct4x4_sse2(input + 4, output + 16, pitch); } -int vp8_fast_quantize_b_impl_sse(short *coeff_ptr, short *zbin_ptr, +int vp8_fast_quantize_b_impl_sse2(short *coeff_ptr, short *qcoeff_ptr, short *dequant_ptr, short *scan_mask, short *round_ptr, short *quant_ptr, short *dqcoeff_ptr); -void vp8_fast_quantize_b_sse(BLOCK *b, BLOCKD *d) +void vp8_fast_quantize_b_sse2(BLOCK *b, BLOCKD *d) { short *scan_mask = vp8_default_zig_zag_mask;//d->scan_order_mask_ptr; short *coeff_ptr = &b->coeff[0]; - short *zbin_ptr = &b->zbin[0][0]; short *round_ptr = &b->round[0][0]; short *quant_ptr = &b->quant[0][0]; short *qcoeff_ptr = d->qcoeff; short *dqcoeff_ptr = d->dqcoeff; short *dequant_ptr = &d->dequant[0][0]; - d->eob = vp8_fast_quantize_b_impl_sse( + d->eob = vp8_fast_quantize_b_impl_ssse2( coeff_ptr, - zbin_ptr, qcoeff_ptr, dequant_ptr, scan_mask, @@ -116,6 +114,7 @@ void vp8_fast_quantize_b_sse(BLOCK *b, BLOCKD *d) ); } + int vp8_regular_quantize_b_impl_sse2(short *coeff_ptr, short *zbin_ptr, short *qcoeff_ptr,short *dequant_ptr, const int *default_zig_zag, short *round_ptr, @@ -285,8 +284,10 @@ void vp8_arch_x86_encoder_init(VP8_COMP *cpi) cpi->rtcd.encodemb.mbuverr = vp8_mbuverror_xmm; /* cpi->rtcd.encodemb.sub* not implemented for wmt */ - /*cpi->rtcd.quantize.fastquantb = vp8_fast_quantize_b_sse; - cpi->rtcd.quantize.quantb = vp8_regular_quantize_b_sse2;*/ + /*cpi->rtcd.quantize.quantb = vp8_regular_quantize_b_sse2;*/ + + cpi->rtcd.quantize.fastquantb = vp8_fast_quantize_b_sse2; + } #endif |