Add multi-process GpuMemoryBuffer framework.

This adds a multi-process framework for reading/writing directly to
memory that the 3D graphics hardware can use for rendering without
any costly copying having to be done on the GPU process side.

A GpuMemoryBuffer is a type of shared memory that can be accessed
by the GPU. The high level procedure required to allocate this type
of memory is almost exactly the same as that for standard shared
memory. Only the browser process can allocated the memory and it
needs to be shared and registered with the GPU process before it can
be used.

This also adds a GpuMemoryBuffer type that is backed by standard
shared memory for testing purposes.

TEST=gpu_unittests --gtest_filter=MockGpuMemoryBufferTest.Lifecycle
BUG=261649

Review URL: https://codereview.chromium.org/19762004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230248 0039d316-1c4b-4281-b951-d872f2087c98
[telemetry] Clip paint events to visible window area in SpeedIndexMetric

Review URL: https://codereview.chromium.org/26567010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230249 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 230249