Commit 5883246d authored by Yaowu Xu's avatar Yaowu Xu

make debug match release build on win32 with 8x8 transform enabled

The 8x8 forward transform makes use of floating operations, therefore
requires emms call to reset mmx registers to correct state. Without
the resets, the 8x8 forward transform results are indefinite on win32
platform.

Change-Id: Ib5b71c3213e10b8a04fe776adf885f3714e7deb1
parent 6e165e86
......@@ -20,6 +20,7 @@
#include "dct.h"
#include "vpx_mem/vpx_mem.h"
#include "rdopt.h"
#include "vp8/common/systemdependent.h"
#if CONFIG_RUNTIME_CPU_DETECT
#define IF_RTCD(x) (x)
......@@ -241,6 +242,8 @@ void vp8_transform_mbuv_8x8(MACROBLOCK *x)
{
int i;
vp8_clear_system_state();
for (i = 16; i < 24; i += 4)
{
x->vp8_short_fdct8x8(&x->block[i].src_diff[0],
......@@ -253,6 +256,8 @@ void vp8_transform_intra_mby_8x8(MACROBLOCK *x)//changed
{
int i;
vp8_clear_system_state();
for (i = 0; i < 9; i += 8)
{
x->vp8_short_fdct8x8(&x->block[i].src_diff[0],
......@@ -278,6 +283,8 @@ void vp8_transform_mb_8x8(MACROBLOCK *x)
{
int i;
vp8_clear_system_state();
for (i = 0; i < 9; i += 8)
{
x->vp8_short_fdct8x8(&x->block[i].src_diff[0],
......@@ -309,6 +316,8 @@ void vp8_transform_mby_8x8(MACROBLOCK *x)
{
int i;
vp8_clear_system_state();
for (i = 0; i < 9; i += 8)
{
x->vp8_short_fdct8x8(&x->block[i].src_diff[0],
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment