| Index: media/base/yuv_convert.cc
 | 
| diff --git a/media/base/yuv_convert.cc b/media/base/yuv_convert.cc
 | 
| index f9a6076830acc4d4a3393a3532c2921298f09f58..094fe79410cd834ffb2b078cd99b0098e2d8814e 100644
 | 
| --- a/media/base/yuv_convert.cc
 | 
| +++ b/media/base/yuv_convert.cc
 | 
| @@ -17,10 +17,10 @@
 | 
|  
 | 
|  #include "media/base/yuv_convert.h"
 | 
|  
 | 
| +#include "base/cpu.h"
 | 
|  #include "base/logging.h"
 | 
|  #include "base/memory/scoped_ptr.h"
 | 
|  #include "build/build_config.h"
 | 
| -#include "media/base/cpu_features.h"
 | 
|  #include "media/base/simd/convert_rgb_to_yuv.h"
 | 
|  #include "media/base/simd/convert_yuv_to_rgb.h"
 | 
|  #include "media/base/simd/filter_yuv.h"
 | 
| @@ -37,9 +37,10 @@ namespace media {
 | 
|  
 | 
|  static FilterYUVRowsProc ChooseFilterYUVRowsProc() {
 | 
|  #if defined(ARCH_CPU_X86_FAMILY)
 | 
| -  if (hasSSE2())
 | 
| +  base::CPU cpu;
 | 
| +  if (cpu.has_sse2())
 | 
|      return &FilterYUVRows_SSE2;
 | 
| -  if (hasMMX())
 | 
| +  if (cpu.has_mmx())
 | 
|      return &FilterYUVRows_MMX;
 | 
|  #endif
 | 
|    return &FilterYUVRows_C;
 | 
| @@ -47,9 +48,10 @@ static FilterYUVRowsProc ChooseFilterYUVRowsProc() {
 | 
|  
 | 
|  static ConvertYUVToRGB32RowProc ChooseConvertYUVToRGB32RowProc() {
 | 
|  #if defined(ARCH_CPU_X86_FAMILY)
 | 
| -  if (hasSSE())
 | 
| +  base::CPU cpu;
 | 
| +  if (cpu.has_sse())
 | 
|      return &ConvertYUVToRGB32Row_SSE;
 | 
| -  if (hasMMX())
 | 
| +  if (cpu.has_mmx())
 | 
|      return &ConvertYUVToRGB32Row_MMX;
 | 
|  #endif
 | 
|    return &ConvertYUVToRGB32Row_C;
 | 
| @@ -60,10 +62,11 @@ static ScaleYUVToRGB32RowProc ChooseScaleYUVToRGB32RowProc() {
 | 
|    // Use 64-bits version if possible.
 | 
|    return &ScaleYUVToRGB32Row_SSE2_X64;
 | 
|  #elif defined(ARCH_CPU_X86_FAMILY)
 | 
| +  base::CPU cpu;
 | 
|    // Choose the best one on 32-bits system.
 | 
| -  if (hasSSE())
 | 
| +  if (cpu.has_sse())
 | 
|      return &ScaleYUVToRGB32Row_SSE;
 | 
| -  if (hasMMX())
 | 
| +  if (cpu.has_mmx())
 | 
|      return &ScaleYUVToRGB32Row_MMX;
 | 
|  #endif  // defined(ARCH_CPU_X86_64)
 | 
|    return &ScaleYUVToRGB32Row_C;
 | 
| @@ -74,10 +77,11 @@ static ScaleYUVToRGB32RowProc ChooseLinearScaleYUVToRGB32RowProc() {
 | 
|    // Use 64-bits version if possible.
 | 
|    return &LinearScaleYUVToRGB32Row_MMX_X64;
 | 
|  #elif defined(ARCH_CPU_X86_FAMILY)
 | 
| +  base::CPU cpu;
 | 
|    // 32-bits system.
 | 
| -  if (hasSSE())
 | 
| +  if (cpu.has_sse())
 | 
|      return &LinearScaleYUVToRGB32Row_SSE;
 | 
| -  if (hasMMX())
 | 
| +  if (cpu.has_mmx())
 | 
|      return &LinearScaleYUVToRGB32Row_MMX;
 | 
|  #endif  // defined(ARCH_CPU_X86_64)
 | 
|    return &LinearScaleYUVToRGB32Row_C;
 | 
| @@ -89,7 +93,8 @@ void EmptyRegisterState() {
 | 
|    static bool checked = false;
 | 
|    static bool has_mmx = false;
 | 
|    if (!checked) {
 | 
| -    has_mmx = hasMMX();
 | 
| +    base::CPU cpu;
 | 
| +    has_mmx = cpu.has_mmx();
 | 
|      checked = true;
 | 
|    }
 | 
|    if (has_mmx)
 | 
| @@ -445,7 +450,8 @@ void ConvertRGB32ToYUV(const uint8* rgbframe,
 | 
|  #else
 | 
|      // TODO(hclam): Switch to SSSE3 version when the cyan problem is solved.
 | 
|      // See: crbug.com/100462
 | 
| -      if (hasSSE2())
 | 
| +    base::CPU cpu;
 | 
| +    if (cpu.has_sse2())
 | 
|        convert_proc = &ConvertRGB32ToYUV_SSE2;
 | 
|      else
 | 
|        convert_proc = &ConvertRGB32ToYUV_C;
 | 
| @@ -472,7 +478,8 @@ void ConvertRGB24ToYUV(const uint8* rgbframe,
 | 
|    static void (*convert_proc)(const uint8*, uint8*, uint8*, uint8*,
 | 
|                                int, int, int, int, int) = NULL;
 | 
|    if (!convert_proc) {
 | 
| -    if (hasSSSE3())
 | 
| +    base::CPU cpu;
 | 
| +    if (cpu.has_ssse3())
 | 
|        convert_proc = &ConvertRGB24ToYUV_SSSE3;
 | 
|      else
 | 
|        convert_proc = &ConvertRGB24ToYUV_C;
 | 
| @@ -541,9 +548,10 @@ void ConvertYUVToRGB32(const uint8* yplane,
 | 
|  #else
 | 
|    static ConvertYUVToRGB32Proc convert_proc = NULL;
 | 
|    if (!convert_proc) {
 | 
| -    if (hasSSE())
 | 
| +    base::CPU cpu;
 | 
| +    if (cpu.has_sse())
 | 
|        convert_proc = &ConvertYUVToRGB32_SSE;
 | 
| -    else if (hasMMX())
 | 
| +    else if (cpu.has_mmx())
 | 
|        convert_proc = &ConvertYUVToRGB32_MMX;
 | 
|      else
 | 
|        convert_proc = &ConvertYUVToRGB32_C;
 | 
| 
 |