Bug 1295927 - Disable libyuv SIMD scaling on 64bit win r=jrmuizel

This commit is contained in:
Sotaro Ikeda 2016-08-19 06:18:08 -07:00
parent a92f03d013
commit 5d8ae5cfad
2 changed files with 9 additions and 0 deletions

View File

@ -486,6 +486,11 @@ AttemptVideoConvertAndScale(TextureSource* aSource, const SourceSurface* aSource
const gfx::Rect& aClipRect,
DrawTarget* aDest, const DrawTarget* aBuffer)
{
#if defined(XP_WIN) && defined(_M_X64)
// libyuv does not support SIMD scaling on win 64bit. See Bug 1295927.
return false;
#endif
WrappingTextureSourceYCbCrBasic* wrappingSource = aSource->AsWrappingTextureSourceYCbCrBasic();
if (!wrappingSource)
return false;

View File

@ -260,6 +260,10 @@ void ScaleYCbCrToRGB32(const uint8* y_buf,
ScaleFilter filter) {
bool use_deprecated = gfxPrefs::YCbCrAccurateConversion() ||
#if defined(XP_WIN) && defined(_M_X64)
// libyuv does not support SIMD scaling on win 64bit. See Bug 1295927.
supports_sse3() ||
#endif
(supports_mmx() && supports_sse() && !supports_sse3());
if (use_deprecated) {
ScaleYCbCrToRGB32_deprecated(y_buf, u_buf, v_buf,