diff options
| author | Anantanarayanan Iyengar <ananta@chromium.org> | 2015-03-10 19:42:14 -0700 | 
|---|---|---|
| committer | Anantanarayanan Iyengar <ananta@chromium.org> | 2015-03-11 02:44:08 +0000 | 
| commit | 49f1920a3e174edd0efedb17ab09262d9f2fe05c (patch) | |
| tree | 3f7c81b61472c3ddd35aaf3a1f7b802c5e4c0ca6 | |
| parent | 54beb8fcb7741de801f7cde5fbcf653f60a86d6d (diff) | |
| download | chromium_src-49f1920a3e174edd0efedb17ab09262d9f2fe05c.zip chromium_src-49f1920a3e174edd0efedb17ab09262d9f2fe05c.tar.gz chromium_src-49f1920a3e174edd0efedb17ab09262d9f2fe05c.tar.bz2 | |
Reverting this to see if this is the cause of the XP test redness. Will reland if this is not the case.
http://build.chromium.org/p/chromium.win/builders/XP%20Tests%20%281%29
Revert "Add ANGLE Platform implementation."
This reverts commit efe950c2db75b0cfd043e068a4cfc68ab393dac4.
R=jmadill@chromium.org
BUG=
Review URL: https://codereview.chromium.org/999623003
Cr-Commit-Position: refs/heads/master@{#320036}
| -rw-r--r-- | ash/ash_unittests.isolate | 1 | ||||
| -rw-r--r-- | cc/cc_unittests.isolate | 1 | ||||
| -rw-r--r-- | chrome/sync_integration_tests.isolate | 1 | ||||
| -rw-r--r-- | chrome/unit_tests.isolate | 1 | ||||
| -rw-r--r-- | components/components_unittests.isolate | 1 | ||||
| -rw-r--r-- | content/content_browsertests.isolate | 1 | ||||
| -rw-r--r-- | content/content_gpu.gypi | 5 | ||||
| -rw-r--r-- | content/content_unittests.isolate | 1 | ||||
| -rw-r--r-- | content/gpu/gpu_main.cc | 19 | ||||
| -rw-r--r-- | extensions/extensions_browsertests.isolate | 1 | ||||
| -rw-r--r-- | gpu/gpu_unittests.isolate | 1 | ||||
| -rw-r--r-- | tools/metrics/histograms/histograms.xml | 40 | ||||
| -rw-r--r-- | ui/gl/BUILD.gn | 4 | ||||
| -rw-r--r-- | ui/gl/DEPS | 6 | ||||
| -rw-r--r-- | ui/gl/angle_platform_impl.cc | 50 | ||||
| -rw-r--r-- | ui/gl/angle_platform_impl.h | 39 | ||||
| -rw-r--r-- | ui/gl/gl.gyp | 7 | ||||
| -rw-r--r-- | ui/gl/gl_implementation_win.cc | 14 | 
18 files changed, 16 insertions, 177 deletions
| diff --git a/ash/ash_unittests.isolate b/ash/ash_unittests.isolate index 40e3e79..319dfc7 100644 --- a/ash/ash_unittests.isolate +++ b/ash/ash_unittests.isolate @@ -64,6 +64,5 @@    ],    'includes': [      '../base/base.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/cc/cc_unittests.isolate b/cc/cc_unittests.isolate index f4a6f45..eab3396 100644 --- a/cc/cc_unittests.isolate +++ b/cc/cc_unittests.isolate @@ -89,6 +89,5 @@    ],    'includes': [      '../base/base.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/chrome/sync_integration_tests.isolate b/chrome/sync_integration_tests.isolate index 06741e3..abecb56 100644 --- a/chrome/sync_integration_tests.isolate +++ b/chrome/sync_integration_tests.isolate @@ -108,6 +108,5 @@    'includes': [      '../base/base.isolate',      '../gin/v8.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/chrome/unit_tests.isolate b/chrome/unit_tests.isolate index 33821eb..715e1fe 100644 --- a/chrome/unit_tests.isolate +++ b/chrome/unit_tests.isolate @@ -157,6 +157,5 @@    'includes': [      '../base/base.isolate',      '../gin/v8.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/components/components_unittests.isolate b/components/components_unittests.isolate index 07e1e0f..fc3491d 100644 --- a/components/components_unittests.isolate +++ b/components/components_unittests.isolate @@ -93,6 +93,5 @@    ],    'includes': [      '../base/base.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/content/content_browsertests.isolate b/content/content_browsertests.isolate index aa24c23..84379d6 100644 --- a/content/content_browsertests.isolate +++ b/content/content_browsertests.isolate @@ -141,6 +141,5 @@    'includes': [      '../base/base.isolate',      '../gin/v8.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/content/content_gpu.gypi b/content/content_gpu.gypi index 1c2121d..af0c47f 100644 --- a/content/content_gpu.gypi +++ b/content/content_gpu.gypi @@ -26,10 +26,13 @@      ['OS=="win"', {        'include_dirs': [          '<(DEPTH)/third_party/khronos', -        # ANGLE libs picked up from ui/gl          '<(angle_path)/src',          '<(DEPTH)/third_party/wtl/include',        ], +      'dependencies': [ +        '<(angle_path)/src/angle.gyp:libEGL', +        '<(angle_path)/src/angle.gyp:libGLESv2', +      ],        'link_settings': {          'libraries': [            '-lsetupapi.lib', diff --git a/content/content_unittests.isolate b/content/content_unittests.isolate index 07ac6e7..f61a3e1 100644 --- a/content/content_unittests.isolate +++ b/content/content_unittests.isolate @@ -109,6 +109,5 @@    'includes': [      '../base/base.isolate',      '../gin/v8.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc index 76a6020..b34d42f 100644 --- a/content/gpu/gpu_main.cc +++ b/content/gpu/gpu_main.cc @@ -12,7 +12,6 @@  #include "base/lazy_instance.h"  #include "base/message_loop/message_loop.h"  #include "base/metrics/histogram.h" -#include "base/metrics/statistics_recorder.h"  #include "base/rand_util.h"  #include "base/strings/string_number_conversions.h"  #include "base/strings/stringprintf.h" @@ -215,14 +214,14 @@ int GpuMain(const MainFunctionParams& parameters) {      watchdog_thread->StartWithOptions(options);    } -  // Initializes StatisticsRecorder which tracks UMA histograms. -  base::StatisticsRecorder::Initialize(); -    gpu::GPUInfo gpu_info;    // Get vendor_id, device_id, driver_version from browser process through    // commandline switches.    GetGpuInfoFromCommandLine(gpu_info, command_line); +  base::TimeDelta collect_context_time; +  base::TimeDelta initialize_one_off_time; +    // Warm up resources that don't need access to GPUInfo.    if (WarmUpSandbox(command_line)) {  #if defined(OS_LINUX) @@ -294,18 +293,15 @@ int GpuMain(const MainFunctionParams& parameters) {  #endif  // !defined(OS_CHROMEOS)  #endif  // defined(OS_LINUX)  #endif  // !defined(OS_MACOSX) -      base::TimeDelta collect_context_time = +      collect_context_time =            base::TimeTicks::Now() - before_collect_context_graphics_info; -      UMA_HISTOGRAM_TIMES("GPU.CollectContextGraphicsInfo", -                          collect_context_time);      } else {  // gl_initialized        VLOG(1) << "gfx::GLSurface::InitializeOneOff failed";        dead_on_arrival = true;      } -    base::TimeDelta initialize_one_off_time = +    initialize_one_off_time =          base::TimeTicks::Now() - before_initialize_one_off; -    UMA_HISTOGRAM_TIMES("GPU.InitializeOneOffTime", initialize_one_off_time);      if (enable_watchdog && delayed_watchdog_enable) {        watchdog_thread = new GpuWatchdogThread(kGpuTimeout); @@ -346,6 +342,11 @@ int GpuMain(const MainFunctionParams& parameters) {    GpuProcess gpu_process; +  // These UMA must be stored after GpuProcess is constructed as it +  // initializes StatisticsRecorder which tracks the histograms. +  UMA_HISTOGRAM_TIMES("GPU.CollectContextGraphicsInfo", collect_context_time); +  UMA_HISTOGRAM_TIMES("GPU.InitializeOneOffTime", initialize_one_off_time); +    GpuChildThread* child_thread = new GpuChildThread(watchdog_thread.get(),                                                      dead_on_arrival,                                                      gpu_info, diff --git a/extensions/extensions_browsertests.isolate b/extensions/extensions_browsertests.isolate index 9681fbe..a8a6fb1 100644 --- a/extensions/extensions_browsertests.isolate +++ b/extensions/extensions_browsertests.isolate @@ -74,6 +74,5 @@    'includes': [      '../base/base.isolate',      '../gin/v8.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/gpu/gpu_unittests.isolate b/gpu/gpu_unittests.isolate index 9f4c87a..a718aac 100644 --- a/gpu/gpu_unittests.isolate +++ b/gpu/gpu_unittests.isolate @@ -72,6 +72,5 @@    ],    'includes': [      '../base/base.isolate', -    '../third_party/angle/angle.isolate',    ],  } diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index 17b5809..b9c3c70 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -10861,22 +10861,6 @@ Therefore, the affected-histogram name has to have at least one dot in it.    </summary>  </histogram> -<histogram name="GPU.ANGLE.D3D11InitializeResult" enum="D3D11InitializeResult"> -  <owner>jmadill@chromium.org</owner> -  <summary> -    The result from initializing a D3D11 device in ANGLE. Can be success, or one -    of several error codes which indicate different reasons for failing. -  </summary> -</histogram> - -<histogram name="GPU.ANGLE.D3D9InitializeResult" enum="D3D9InitializeResult"> -  <owner>jmadill@chromium.org</owner> -  <summary> -    The result from initializing a D3D9 device in ANGLE. Can be success, or one -    of several error codes which indicate different reasons for failing. -  </summary> -</histogram> -  <histogram name="GPU.CollectContextGraphicsInfo" units="microseconds">    <owner>vangelis@chromium.org</owner>    <summary> @@ -10898,8 +10882,7 @@ Therefore, the affected-histogram name has to have at least one dot in it.    <owner>jmadill@chromium.org</owner>    <summary>      ANGLE's currently active D3D shader model version. Logged once every startup -    of the GPU process, on Windows only. Note that Shader Models 2 and 3 map to -    D3D9 with ANGLE, and 4+ map to D3D11 ANGLE. +    of the GPU process, on Windows only.    </summary>  </histogram> @@ -46074,27 +46057,6 @@ Therefore, the affected-histogram name has to have at least one dot in it.    <int value="2" label="Has enough SCTs"/>  </enum> -<enum name="D3D11InitializeResult" type="int"> -  <int value="0" label="Success"/> -  <int value="1" label="Error initializing compiler"/> -  <int value="2" label="Missing DLL dependency"/> -  <int value="3" label="D3D11CreateDevice returned E_INVALIDARG"/> -  <int value="4" label="D3D11CreateDevice returned other error"/> -  <int value="5" label="DXGI version not supported"/> -  <int value="6" label="Other initialization error"/> -</enum> - -<enum name="D3D9InitializeResult" type="int"> -  <int value="0" label="Success"/> -  <int value="1" label="Error initializing compiler"/> -  <int value="2" label="Missing DLL dependency"/> -  <int value="3" label="Error creating device"/> -  <int value="4" label="Shader version not supported"/> -  <int value="5" label="StretchRect from textures not supported"/> -  <int value="6" label="Device lost of out-of-memory error"/> -  <int value="7" label="Other initialization error"/> -</enum> -  <enum name="DailyEventIntervalType" type="int">    <int value="0" label="First Run"/>    <int value="1" label="Day Elapsed"/> diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn index 88b4c36..12a44cc 100644 --- a/ui/gl/BUILD.gn +++ b/ui/gl/BUILD.gn @@ -183,8 +183,6 @@ component("gl") {    }    if (is_win) {      sources += [ -      "angle_platform_impl.cc", -      "angle_platform_impl.h",        "gl_bindings_autogen_wgl.cc",        "gl_bindings_autogen_wgl.h",        "gl_context_wgl.cc", @@ -197,8 +195,6 @@ component("gl") {        "gl_wgl_api_implementation.h",      ] -    deps += [ "//third_party/angle:libGLESv2" ] -      libs = [ "dwmapi.lib" ]      ldflags = [ "/DELAYLOAD:dwmapi.dll" ]    } @@ -12,9 +12,5 @@ specific_include_rules = {  # get access to desktop OpenGL.    "gl_surface_osmesa.cc": [      "+third_party/mesa/src/include/GL/osmesa.h", -  ], -# Allow us to include ANGLE's base platform implementation. -  "angle_platform_impl.h": [ -    "+third_party/angle/include/platform/Platform.h", -  ], +  ]  } diff --git a/ui/gl/angle_platform_impl.cc b/ui/gl/angle_platform_impl.cc deleted file mode 100644 index 2ce12b8..0000000 --- a/ui/gl/angle_platform_impl.cc +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "ui/gl/angle_platform_impl.h" - -#include "base/metrics/histogram.h" -#include "base/metrics/sparse_histogram.h" - -namespace gfx { - -ANGLEPlatformImpl::ANGLEPlatformImpl() { -} - -ANGLEPlatformImpl::~ANGLEPlatformImpl() { -} - -void ANGLEPlatformImpl::histogramCustomCounts(const char* name, -                                              int sample, -                                              int min, -                                              int max, -                                              int bucket_count) { -  // Copied from histogram macro, but without the static variable caching -  // the histogram because name is dynamic. -  base::HistogramBase* counter = base::Histogram::FactoryGet( -      name, min, max, bucket_count, -      base::HistogramBase::kUmaTargetedHistogramFlag); -  DCHECK_EQ(name, counter->histogram_name()); -  counter->Add(sample); -} - -void ANGLEPlatformImpl::histogramEnumeration(const char* name, -                                             int sample, -                                             int boundary_value) { -  // Copied from histogram macro, but without the static variable caching -  // the histogram because name is dynamic. -  base::HistogramBase* counter = base::LinearHistogram::FactoryGet( -      name, 1, boundary_value, boundary_value + 1, -      base::HistogramBase::kUmaTargetedHistogramFlag); -  DCHECK_EQ(name, counter->histogram_name()); -  counter->Add(sample); -} - -void ANGLEPlatformImpl::histogramSparse(const char* name, int sample) { -  // For sparse histograms, we can use the macro, as it does not incorporate a -  // static. -  UMA_HISTOGRAM_SPARSE_SLOWLY(name, sample); -} - -}  // namespace gfx diff --git a/ui/gl/angle_platform_impl.h b/ui/gl/angle_platform_impl.h deleted file mode 100644 index 2d12f60..0000000 --- a/ui/gl/angle_platform_impl.h +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef UI_GL_ANGLE_PLATFORM_IMPL_H_ -#define UI_GL_ANGLE_PLATFORM_IMPL_H_ - -// Implements the ANGLE platform interface, for functionality like -// histograms and trace profiling. - -#include "base/macros.h" -#include "third_party/angle/include/platform/Platform.h" - -namespace gfx { - -// Derives the base ANGLE platform and provides implementations -class ANGLEPlatformImpl : public angle::Platform { - public: -  ANGLEPlatformImpl(); -  ~ANGLEPlatformImpl() override; - -  // angle::Platform: -  void histogramCustomCounts(const char* name, -                             int sample, -                             int min, -                             int max, -                             int bucket_count) override; -  void histogramEnumeration(const char* name, -                            int sample, -                            int boundary_value) override; -  void histogramSparse(const char* name, int sample) override; - - private: -  DISALLOW_COPY_AND_ASSIGN(ANGLEPlatformImpl); -}; - -}  // namespace gfx - -#endif  // UI_GL_ANGLE_PLATFORM_IMPL_H_ diff --git a/ui/gl/gl.gyp b/ui/gl/gl.gyp index d62950a..05381078 100644 --- a/ui/gl/gl.gyp +++ b/ui/gl/gl.gyp @@ -186,8 +186,6 @@          }],          ['OS=="win"', {            'sources': [ -            'angle_platform_impl.cc', -            'angle_platform_impl.h',              'gl_bindings_autogen_wgl.cc',              'gl_bindings_autogen_wgl.h',              'gl_context_wgl.cc', @@ -199,11 +197,6 @@              'gl_wgl_api_implementation.cc',              'gl_wgl_api_implementation.h',            ], -          'dependencies': [ -            # TODO(jmadill): Use ANGLE on other platforms. -            '<(angle_path)/src/angle.gyp:libEGL', -            '<(angle_path)/src/angle.gyp:libGLESv2', -          ],            'msvs_settings': {              'VCLinkerTool': {                'DelayLoadDLLs': [ diff --git a/ui/gl/gl_implementation_win.cc b/ui/gl/gl_implementation_win.cc index 618250d..477f5a5 100644 --- a/ui/gl/gl_implementation_win.cc +++ b/ui/gl/gl_implementation_win.cc @@ -9,7 +9,6 @@  #include "base/bind.h"  #include "base/command_line.h"  #include "base/files/file_path.h" -#include "base/lazy_instance.h"  #include "base/logging.h"  #include "base/native_library.h"  #include "base/path_service.h" @@ -17,8 +16,6 @@  #include "base/threading/thread_restrictions.h"  #include "base/trace_event/trace_event.h"  #include "base/win/windows_version.h" -// TODO(jmadill): Apply to all platforms eventually -#include "ui/gl/angle_platform_impl.h"  #include "ui/gl/gl_bindings.h"  #include "ui/gl/gl_context_stub_with_extensions.h"  #include "ui/gl/gl_egl_api_implementation.h" @@ -100,10 +97,6 @@ typedef void (__stdcall *SetTraceFunctionPointersFunc)(      GetCategoryEnabledFlagFunc get_category_enabled_flag,      AddTraceEventFunc add_trace_event_func); -// TODO(jmadill): Apply to all platforms eventually -base::LazyInstance<ANGLEPlatformImpl> g_angle_platform_impl = -    LAZY_INSTANCE_INITIALIZER; -  }  // namespace  void GetAllowedGLImplementations(std::vector<GLImplementation>* impls) { @@ -118,10 +111,6 @@ bool InitializeStaticGLBindings(GLImplementation implementation) {    // later switch to another GL implementation.    DCHECK_EQ(kGLImplementationNone, GetGLImplementation()); -  // Init ANGLE platform here, before we call GetPlatformDisplay(). -  // TODO(jmadill): Apply to all platforms eventually -  angle::Platform::initialize(&g_angle_platform_impl.Get()); -    // Allow the main thread or another to initialize these bindings    // after instituting restrictions on I/O. Going forward they will    // likely be used in the browser process on most platforms. The @@ -359,9 +348,6 @@ void InitializeDebugGLBindings() {  }  void ClearGLBindings() { -  // TODO(jmadill): Apply to all platforms eventually -  angle::Platform::shutdown(); -    ClearGLBindingsEGL();    ClearGLBindingsGL();    ClearGLBindingsOSMESA(); | 
