summaryrefslogtreecommitdiff
path: root/vp8/encoder/x86/x86_csystemdependent.c
diff options
context:
space:
mode:
authorScott LaVarnway <slavarnway@google.com>2010-10-07 11:43:19 -0400
committerScott LaVarnway <slavarnway@google.com>2010-10-07 11:43:19 -0400
commitd860f685b85ffafb32dfc20da53aaa81cb62c5c5 (patch)
tree5b404f5404c4f2ac33828a229c329b8f323fb6c6 /vp8/encoder/x86/x86_csystemdependent.c
parentd338d14c6bcf1bd9f9d028cf7ee177503076da47 (diff)
downloadlibvpx-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.c15
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