summaryrefslogtreecommitdiffstats
path: root/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Remove duplicate entries from GLState valid value setkkinnunen@nvidia.com2014-05-143-20/+8
| | | | | | | | | | The code-generator added duplicate values for GLState value validator. BUG=373132 Review URL: https://codereview.chromium.org/282753004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270376 0039d316-1c4b-4281-b951-d872f2087c98
* Remove constant values from command buffer commandskkinnunen@nvidia.com2014-05-1419-741/+862
| | | | | | | | | | | | | | | | | | Some named GL types have only one possible value. Remove the variables for these from the command buffer commands. Validate the argument in the client. In order to detect that an argument is constant, the named type type info object must contain one valid value and a new 'is_complete' property must be 'True'. Add an enum constant in the command buffer command C++ class for each constant value. This way the hand-written decoder code can access the value as if it was passed through the command buffer. BUG=369969 Review URL: https://codereview.chromium.org/282543002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270357 0039d316-1c4b-4281-b951-d872f2087c98
* Add vmiura@ to GPU command buffer owners.vmiura@chromium.org2014-05-141-0/+1
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/286743002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270334 0039d316-1c4b-4281-b951-d872f2087c98
* Clarify function info object usage in the command buffer generatorkkinnunen@nvidia.com2014-05-131-179/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before, the Function objects (roughly corresponding to the commands being generated) would construct itself based on the function info object, parsed properties and many argument lists. The argument lists themselves were also constructed out of function info object and the parsed properties. Try to clarify this by following changes. Define that function info object is first parsed from the cmd_buffer_functions.txt file. Then the function info is possibly augmented by the optional object for the function info object table (_FUNCTION_INFO). Function objects are created solely on the function info object. Function constructor parses the function info object and constructs the needed properties, such as function type handlers, argument arrays and return value types. Function provides simple initialization function that the immediate and bucket subclasses can use to construct specialized versions of the command buffer command argument lists. Review URL: https://codereview.chromium.org/276873002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270051 0039d316-1c4b-4281-b951-d872f2087c98
* Added Chrome-side support for EXT_blend_minmax WebGL extensionbajones@chromium.org2014-05-132-0/+16
| | | | | | | | BUG=344451 Review URL: https://codereview.chromium.org/286553002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270012 0039d316-1c4b-4281-b951-d872f2087c98
* Make command buffer generator infer GL array element type from the GL prototypekkinnunen@nvidia.com2014-05-121-64/+79
| | | | | | | | | | | | | | Make command buffer generator infer GL array element type from the GL prototype. Before, it was written in the function info specification. This would simplify the usage if PUT functions that have two pointer types would ever be supported. BUG=344330 Review URL: https://codereview.chromium.org/272953002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269914 0039d316-1c4b-4281-b951-d872f2087c98
* Prefer GL_ARB_sync/ES3 fencessievers@google.com2014-05-121-15/+0
| | | | | | | | | | | | | They are a better option since server-side wait is supported by default. It also avoids the broken EGL_KHR_fence_sync implementation on Qualcomm drivers. BUG=371530,278606,341867 R=piman@chromium.org, reveman@chromium.org Review URL: https://codereview.chromium.org/285523002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269863 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up SyncCompositorFactory context creationboliu@chromium.org2014-05-102-21/+37
| | | | | | | | | | | | | | | | | Separate out context creation that does not need surface or service into separate CreateOffscreenContext call. Do not create GLSurfaceStubs on client side, and pass in NULL window so the context creates GLSurfaceStubs on service side. Clean up share context code since compositor does not need an offscreen context anymore. BUG=370566 Review URL: https://codereview.chromium.org/271763002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269618 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Un-blacklist D3D11 on Intel machines."jmadill@chromium.org2014-05-101-1/+13
| | | | | | | | | | | | | | | > With ongoing work on fixing bugs and performance in D3D11, as well > as blacklisting old drviers, we might have more stable results on > Intel. If possible we can narrow down ranges of crashing configs > and blacklist those individually. > > BUG=363721 BUG=369475 Review URL: https://codereview.chromium.org/273723004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269591 0039d316-1c4b-4281-b951-d872f2087c98
* Reland r264914boliu@chromium.org2014-05-095-21/+49
| | | | | | | | | | | | | | | | | | | | This was accidentally reverted in r267753 Original description: Use VAO for default_vertex_attrib_manager if available. By using VAO's we can make virtual context switches faster by a single glBindVertexArrayOES instead of restoring all attributes one-by-one. BUG= TBR=vmiura NOTRY=true Review URL: https://codereview.chromium.org/278653002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269417 0039d316-1c4b-4281-b951-d872f2087c98
* Return has value, in function returning void.dongseong.hwang@intel.com2014-05-091-1/+1
| | | | | | | | BUG=N/A Review URL: https://codereview.chromium.org/264373004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269363 0039d316-1c4b-4281-b951-d872f2087c98
* Add GL version support in gpu blacklist and workaround list.zmo@chromium.org2014-05-0715-71/+307
| | | | | | | | | | | | Also, Move the hardwired Android workaround to the list. BUG=369316 TEST=gpu bots, Android with NVIDIA and ES 3.1 uses virtualized contexts. R=cdn@chromium.org, estade@chromium.org, kbr@chromium.org, epenner@chromium.org Review URL: https://codereview.chromium.org/265843012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268975 0039d316-1c4b-4281-b951-d872f2087c98
* Remove {linux|android}_use_tcmalloc and switch to use_allocator in Chromium.dmikurube@chromium.org2014-05-072-4/+2
| | | | | | | | | | | | | | If this change breaks some bots, please try restarting the bot before reverting it. http://crrev.com/264460 may not be effective yet until restarting. See the bug and http://crrev.com/255129 for the details. BUG=345554 Review URL: https://codereview.chromium.org/258433005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268876 0039d316-1c4b-4281-b951-d872f2087c98
* Fix redundant flushes in CommandBufferHelper::WaitForToken().vmiura@chromium.org2014-05-062-2/+47
| | | | | | | | | | Due to off-by-one test, we waited for a token that is already ready. This caused tens of excess Flushes() in Ganesh font cache uploads. BUG=370221 Review URL: https://codereview.chromium.org/263033004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268563 0039d316-1c4b-4281-b951-d872f2087c98
* Rearrange GLImage API to create them with a usage typealexst@chromium.org2014-05-0628-2060/+1091
| | | | | | | | | | instead of using usage type while mapping the buffer. BUG= Review URL: https://codereview.chromium.org/255713008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268548 0039d316-1c4b-4281-b951-d872f2087c98
* Uncleared textures attached to an FBO mark the FBO incomplete.vmiura@chromium.org2014-05-062-0/+99
| | | | | | | | | | | | Previously this was missing and led to a bookkeeping error, whereby the FBO texture attachment may not be cleared when needed, and/or cleared at the wrong time. BUG=367216 Review URL: https://codereview.chromium.org/270013004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268438 0039d316-1c4b-4281-b951-d872f2087c98
* Remove command_buffer/common/types.h.thakis@chromium.org2014-05-0533-4150/+5245
| | | | | | | | | | | | Make its current clients use base/macros.h and stdint.h instead. No behavior change. BUG=138542 NOTRY=true Review URL: https://codereview.chromium.org/268063002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268315 0039d316-1c4b-4281-b951-d872f2087c98
* Remove all the duplicate macros and types in command_buffer/common/types.h.thakis@chromium.org2014-05-043-184/+12
| | | | | | | | | | | | (The motivation is that base's COMPILE_ASSERT uses static_assert if available, while this file's COMPILE_ASSERT didn't.) BUG=321833 NOTRY=true Review URL: https://codereview.chromium.org/267963004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268123 0039d316-1c4b-4281-b951-d872f2087c98
* Optimize GLES2DecoderImpl::ApplyDirtyState.vmiura@chromium.org2014-05-0325-1043/+1668
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ApplyDirtyState can on average 30% of the time of GLES2 draw calls. It previously set Color, Depth, Stencil masks and several enables without checking if they changed. This change caches values used in ApplyDirtyState among other places, and adds ContextState methods for setting state with cache checks. New cached state aware Set methods: * ContextState::SetDeviceCapabilityState * ContextState::SetDeviceColorMask * ContextState::SetDeviceDepthMask * ContextState::SetDeviceStencilMaskSeparate Testing: * gpu_unit tests now run both with cache on and off (ignore_cached_state_for_test = true) to validate behavior independent of cache layering. * New tests specific for caching behavior: ** GLES2DecoderManualInitTest.ContextStateCapabilityCaching ** GLES2DecoderManualInitTest.CachedColorMask ** GLES2DecoderManualInitTest.CachedDepthMask ** GLES2DecoderManualInitTest.CachedStencilMask BUG=347364 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=267450 Review URL: https://codereview.chromium.org/245923008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268017 0039d316-1c4b-4281-b951-d872f2087c98
* Disable OES_standard_derivative with Vivante GPUs.zmo@chromium.org2014-05-031-1/+16
| | | | | | | | | | BUG=368005 TEST= R=kbr@chromium.org,qinmin@chromium.org Review URL: https://codereview.chromium.org/262003003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268015 0039d316-1c4b-4281-b951-d872f2087c98
* Enable Intel GPUs on Linux with Mesa 10.1 or newer.zmo@chromium.org2014-05-031-3/+11
| | | | | | | | | BUG=340886 TEST=gpu_unittests Review URL: https://codereview.chromium.org/262953002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268004 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor gles2_cmd_decoder_unittest.cc into components.vmiura@chromium.org2014-05-0210-8646/+10174
| | | | | | | | | | | | | | | | gles2_cmd_decoder_unittest.cc has gotten too big and additional work is causing build errors on Win64. See CL https://codereview.chromium.org/262793002/ for example. This change splits up gles2_cmd_decoder_unittest.cc into smaller logical components. BUG=369596 Review URL: https://codereview.chromium.org/268773006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267951 0039d316-1c4b-4281-b951-d872f2087c98
* GPU: Use idle-uploads for new NVidia drivers.epenner@chromium.org2014-05-021-0/+9
| | | | | | | | | | | | | | To be efficient threaded we need fences, but we should disable the threaded version until we have them. BUG=369316 NOTRY=true No try since this is Android only and the failing test is on linux. Review URL: https://codereview.chromium.org/262803009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267920 0039d316-1c4b-4281-b951-d872f2087c98
* Rework RingBuffer to assume the functionality of AlignedRingBuffervbuzinov@nvidia.com2014-05-026-248/+82
| | | | | | | | | | | | | | | | AlignedRingBuffer used to be the only user of the RingBuffer class. Merge the functionality of AlignedRingBuffer into RingBuffer, also fixing the problem of introducing memory misalignment on a zero-byte allocation. Add test case for the zero-byte allocation case. BUG= Review URL: https://codereview.chromium.org/258733014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267857 0039d316-1c4b-4281-b951-d872f2087c98
* Add GL_CHROMIUM_map_sub to command buffer client extension string.bsalomon@google.com2014-05-022-2/+4
| | | | | | | | BUG=skia:2406 Review URL: https://codereview.chromium.org/263853003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267798 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Separate GpuControlService from GpuControlboliu@chromium.org2014-05-0223-231/+266
| | | | | | | | | | | | | | | | | | | | | | | | | Orignal goal of this CL is to make InProcessCommandBuffer::CreateGpuMemoryBuffer and DestroyGpuMemoryBuffer thread safe. Before this, Create runs on the client thread and Destroy runs on the service thread without any kind of synchronization. This change makes the division closer to the cross-process implementation, moving parts of the implementation from GpuControlService to GpuControl/InProcessViewRenderer. As a result, GpuControlService no longer needs to inherit GpuControl. And GLES2Decoder has enough information to decide on all gpu::Capabilities. Need to implement the bare minimum client GpuControl for gl_tests and gles2_conform_test. This currently involves some boilerplate and duplication. BUG=362346 Review URL: https://codereview.chromium.org/235563002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267753 0039d316-1c4b-4281-b951-d872f2087c98
* Enable GPU on Optimus on Linux with newer Mesa.zmo@chromium.org2014-05-021-3/+19
| | | | | | | | | | | | | We also want to make sure it is the Intel GPU, as the NVIDIA GPU with Mesa is still in bad shape. BUG=363418 TEST=gpu_unittests R=kbr@chromium.org Review URL: https://codereview.chromium.org/268673010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267689 0039d316-1c4b-4281-b951-d872f2087c98
* Use base::bits::Log2{Floor,Ceiling} instead of redefining them in ↵posciak@chromium.org2014-05-011-29/+2
| | | | | | | | | | | | | TransferBuffer. Both implementations appear identical. BUG=None TEST=gpu_unittests Review URL: https://codereview.chromium.org/266483002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267478 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of Optimize GLES2DecoderImpl::ApplyDirtyState. ↵tapted@chromium.org2014-05-0117-1821/+1191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/245923008/) Reason for revert: Failing compile on win64 debug waterfall bot gpu\command_buffer\service\gles2_cmd_decoder_unittest.cc : fatalerror C1128: number of sections exceeded object file format limit : compile with /bigobj link: http://build.chromium.org/p/chromium.win/builders/Win%20x64%20Builder%20%28dbg%29/builds/7743 Original issue's description: > Optimize GLES2DecoderImpl::ApplyDirtyState. > > ApplyDirtyState can on average 30% of the time of GLES2 > draw calls. It previously set Color, Depth, Stencil masks > and several enables without checking if they changed. > > This change caches values used in ApplyDirtyState among > other places, and adds ContextState methods for setting > state with cache checks. > > New cached state aware Set methods: > * ContextState::SetDeviceCapabilityState > * ContextState::SetDeviceColorMask > * ContextState::SetDeviceDepthMask > * ContextState::SetDeviceStencilMaskSeparate > > Testing: > * gpu_unit tests now run both with cache on and off (ignore_cached_state_for_test = true) > to validate behavior independent of cache layering. > * New tests specific for caching behavior: > ** GLES2DecoderManualInitTest.ContextStateCapabilityCaching > ** GLES2DecoderManualInitTest.CachedColorMask > ** GLES2DecoderManualInitTest.CachedDepthMask > ** GLES2DecoderManualInitTest.CachedStencilMask > > BUG=347364 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=267450 TBR=piman@chromium.org,jbates@chromium.org,oetuaho@nvidia.com,vmiura@chromium.org NOTREECHECKS=true NOTRY=true BUG=347364 Review URL: https://codereview.chromium.org/262793002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267465 0039d316-1c4b-4281-b951-d872f2087c98
* Optimize GLES2DecoderImpl::ApplyDirtyState.vmiura@chromium.org2014-05-0117-1191/+1821
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ApplyDirtyState can on average 30% of the time of GLES2 draw calls. It previously set Color, Depth, Stencil masks and several enables without checking if they changed. This change caches values used in ApplyDirtyState among other places, and adds ContextState methods for setting state with cache checks. New cached state aware Set methods: * ContextState::SetDeviceCapabilityState * ContextState::SetDeviceColorMask * ContextState::SetDeviceDepthMask * ContextState::SetDeviceStencilMaskSeparate Testing: * gpu_unit tests now run both with cache on and off (ignore_cached_state_for_test = true) to validate behavior independent of cache layering. * New tests specific for caching behavior: ** GLES2DecoderManualInitTest.ContextStateCapabilityCaching ** GLES2DecoderManualInitTest.CachedColorMask ** GLES2DecoderManualInitTest.CachedDepthMask ** GLES2DecoderManualInitTest.CachedStencilMask BUG=347364 Review URL: https://codereview.chromium.org/245923008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267450 0039d316-1c4b-4281-b951-d872f2087c98
* Expand the GPU rasterization whitelistajuma@chromium.org2014-05-011-1/+10
| | | | | | | | | | | This expands the GPU rasterization whitelist to include future OS versions. BUG=362779 Review URL: https://codereview.chromium.org/269503002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267439 0039d316-1c4b-4281-b951-d872f2087c98
* Un-blacklist D3D11 on Intel machines.jmadill@chromium.org2014-04-301-13/+1
| | | | | | | | | | | | | With ongoing work on fixing bugs and performance in D3D11, as well as blacklisting old drviers, we might have more stable results on Intel. If possible we can narrow down ranges of crashing configs and blacklist those individually. BUG=363721 Review URL: https://codereview.chromium.org/255033002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267221 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Add support for GL_TEXTURE_RECTANGLE_ARB target to CHROMIUM_copy_texture.reveman@chromium.org2014-04-303-5/+34
| | | | | | | | BUG=366710 Review URL: https://codereview.chromium.org/254753002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267093 0039d316-1c4b-4281-b951-d872f2087c98
* Remove CommandBuffer::GetStatepiman@chromium.org2014-04-3017-47/+27
| | | | | | | | | | | | https://codereview.chromium.org/220243003 removed the last client-side caller. Service-side implementation of GetState is identical to GetLastState. So replace all instances of GetState by GetLastState and remove the former. BUG=None Review URL: https://codereview.chromium.org/253943002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267027 0039d316-1c4b-4281-b951-d872f2087c98
* Update GPU command buffer auto formatting.vmiura@chromium.org2014-04-3014-1972/+4454
| | | | | | | | | | | | | Looks like clang-format rules changed. Updating to latest output of: ./gpu/command_buffer/build_gles2_cmd_buffer.py BUG= Review URL: https://codereview.chromium.org/247283005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266999 0039d316-1c4b-4281-b951-d872f2087c98
* Missing machine model info should be a no match for GPU blacklistalokp@chromium.org2014-04-293-5/+88
| | | | | | | | | | BUG=368006 TEST=gpu_unittests, on win/linux, gpu_rasterization is off R=kbr@chromium.org Review URL: https://codereview.chromium.org/253883006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266963 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Optimize and cleanup shader code used for CHROMIUM_copy_texture.reveman@chromium.org2014-04-292-126/+149
| | | | | | | | | | | Removes all dependent texture lookups and makes sure we're not using unnecessarily high precision for texture coordinates. BUG=269808 Review URL: https://codereview.chromium.org/257803011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266801 0039d316-1c4b-4281-b951-d872f2087c98
* Adding support for PVRTC, ATC, and ETC1 textures to the command bufferbajones@chromium.org2014-04-295-111/+236
| | | | | | | | BUG=364564 Review URL: https://codereview.chromium.org/242163002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266723 0039d316-1c4b-4281-b951-d872f2087c98
* Add proper includes for usage of the CityHash functions.mvrable@chromium.org2014-04-281-3/+1
| | | | | | | | | | | | Previously function declarations needed to be added manually because of build errors on Windows when including the City.h file. Now, with the build errors fixed, use the proper includes everywhere. BUG=353157 Review URL: https://codereview.chromium.org/246013008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266645 0039d316-1c4b-4281-b951-d872f2087c98
* Remove --disable-accelerated-video and GPU_FEATURE_TYPE_ACCELERATED_VIDEOpiman@chromium.org2014-04-264-8/+0
| | | | | | | | | | | | These are just compositing triggers. GPU_FEATURE_TYPE_ACCELERATED_VIDEO is completely ignored, and there's no reason to disable the compositing trigger since FCM is always on in production. BUG=362164 Review URL: https://codereview.chromium.org/240253006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266354 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Refactor and cleanup CHROMIUM_copy_texture implementation.reveman@chromium.org2014-04-262-223/+148
| | | | | | | | | | | | This removes duplicate shader code, makes it easier to support additional texture targets and implements on demand initialization of shaders. BUG=366710 Review URL: https://codereview.chromium.org/255763002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266351 0039d316-1c4b-4281-b951-d872f2087c98
* Remove GPU_FEATURE_TYPE_3D_CSS and --disable-accelerated-layerspiman@chromium.org2014-04-253-7/+0
| | | | | | | | | | | | | | | | | | We ignore GPU_FEATURE_TYPE_3D_CSS, so remove it. Nothing sets --disable-accelerated-layers, and it doesn't correspond to a production path, so remove it. This lets us clean up some WebPreferences fields which are always set to true. Also remove WebPreferences::accelerated_compositing_for_plugins_enabled which is always true. BUG=362164,365847 R=bbudge@chromium.org, danakj@chromium.org, tsepez@chromium.org Review URL: https://codereview.chromium.org/239973005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266226 0039d316-1c4b-4281-b951-d872f2087c98
* Fix miscompilation of NULL check.jbauman@chromium.org2014-04-241-6/+21
| | | | | | | | | | The NULL check seems to be accidentally compiled out, so work around that by dereferencing the same datatype through a volatile pointer. BUG=361936 Review URL: https://codereview.chromium.org/255403008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266053 0039d316-1c4b-4281-b951-d872f2087c98
* Disallow sizes and offsets that can't fit into a 32-bit integer in GL.zmo@chromium.org2014-04-244-10/+172
| | | | | | | | | | | | So we have consistent behaviors on various systems. BUG=363869 TEST=gpu_unittests, http://www.khronos.org/registry/webgl/sdk/tests/conformance/rendering/draw-elements-out-of-bounds.html on 64 bit systems. R=piman@chromium.org, kbr@chromium.org Review URL: https://codereview.chromium.org/246403012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266021 0039d316-1c4b-4281-b951-d872f2087c98
* Rename gpu.SwapBuffers to gpu.PresentingFrame and add it to PostSubBuffer.geofflang@chromium.org2014-04-241-1/+4
| | | | | | | | | | | | Depending on the GL implementation, PostSubBuffer may be called instead of SwapBuffers. Rename gpu.SwapBuffers to a more generic gpu.PresentingFrame and update all the tests that use the delay. BUG=359662 Review URL: https://codereview.chromium.org/240073008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265936 0039d316-1c4b-4281-b951-d872f2087c98
* Fix slow TextureManager::StopTracking()vmiura@chromium.org2014-04-234-13/+52
| | | | | | | | | | | | | | | Iterating an ObserverList which uses WeakPtr items seems very slow. Changing to std::vector<> gives about a 15X speedup. Further skipping the observer call backs for TextureRefs with no current observers should cut this close to 0. BUG=365536 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=265469 Review URL: https://codereview.chromium.org/246353002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265771 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup GPU dependencies for gl_in_process_contextprimiano@chromium.org2014-04-233-9/+53
| | | | | | | | | | | | | This CL decouples the gl_in_process_context from gles2_implementation, introducing a dedicated target (gl_in_process_context) and fixing the corresponding dependencies. This is a pre-requisite for crrev.com/228003006 and crbug.com/159847 BUG=159847 Review URL: https://codereview.chromium.org/247073005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265613 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 265469 "Fix slow TextureManager::StopTracking()"sky@chromium.org2014-04-234-53/+13
| | | | | | | | | | | | | | | | | | | | | | This broke mac and asan builders. See following for one: http://build.chromium.org/p/chromium.memory/builders/Linux%20ASan%20LSan%20Tests%20%281%29/builds/1584/steps/gpu_unittests/logs/AsyncPixelTransfers > Fix slow TextureManager::StopTracking() > > Iterating an ObserverList which uses WeakPtr items seems very slow. > > Changing to std::vector<> gives about a 15X speedup. > Further skipping the observer call backs for TextureRefs with no current observers should cut this close to 0. > > BUG=365536 > > Review URL: https://codereview.chromium.org/246353002 TBR=vmiura@chromium.org Review URL: https://codereview.chromium.org/247343003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265542 0039d316-1c4b-4281-b951-d872f2087c98
* Fix slow TextureManager::StopTracking()vmiura@chromium.org2014-04-234-13/+53
| | | | | | | | | | | | | Iterating an ObserverList which uses WeakPtr items seems very slow. Changing to std::vector<> gives about a 15X speedup. Further skipping the observer call backs for TextureRefs with no current observers should cut this close to 0. BUG=365536 Review URL: https://codereview.chromium.org/246353002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265469 0039d316-1c4b-4281-b951-d872f2087c98
* Remove dependency on --gc-sections for most Android debug targets.primiano@chromium.org2014-04-221-0/+1
| | | | | | | | | | | | | | | Android targets shouldn't rely (at least on Debug) on the linker GC. This CL refactors gyp files to fix target dependencies (some of them wrong for components builds due to the .so split). The only targets left, at this point, are chrome_shell and content_browsertests (will take more work). BUG=159847 Review URL: https://codereview.chromium.org/228003006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265378 0039d316-1c4b-4281-b951-d872f2087c98