summaryrefslogtreecommitdiffstats
path: root/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Quick fix to resolve a heap corruption in shader translator.zmo@chromium.org2012-01-261-4/+12
| | | | | | | | | | | For the long run, we should modify the ANGLE interface to also return size for mapped_name, so we can just construct the string with a size parameter. BUG=110559 TEST=test in the bug tracker, no more heap corruption R=gman Review URL: https://chromiumcodereview.appspot.com/9113066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119172 0039d316-1c4b-4281-b951-d872f2087c98
* Clear the backbuffer on initialization in GLES2DecoderImplgman@chromium.org2012-01-252-1/+9
| | | | | | | | | | TEST=unit tests BUG=110352 Review URL: http://codereview.chromium.org/9195022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119140 0039d316-1c4b-4281-b951-d872f2087c98
* Ask the GLSurface for the real service ID of the backbuffer.backer@chromium.org2012-01-201-6/+6
| | | | | | | | | | | | The real FBO ID of the backbuffer may not be 0 (on OSX and Linux Aura). It's a mistake to assume so. BUG=none TEST=none Review URL: http://codereview.chromium.org/9226018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118518 0039d316-1c4b-4281-b951-d872f2087c98
* Do a flip instead of a blit when possible.backer@chromium.org2012-01-202-19/+43
| | | | | | | | | | | If the offscreen buffer is not multisampled and the context was not created requesting that the backbuffer be preserved on SwapBuffers, we can flip instead of blit on the swap. BUG=91426 TEST=by hand using simple_vertex_shader_ppapi requesting EGL_BUFFER_PRESERVED and EGL_BUFFER_DESTROYED; confirmed that offscreen_target_buffer_preserved_ == true for WebGL (although WebGL seems to not hit this path anymore) Review URL: https://chromiumcodereview.appspot.com/9249017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118437 0039d316-1c4b-4281-b951-d872f2087c98
* Code cleanup.backer@chromium.org2012-01-193-31/+5
| | | | | | | | | | | | Seems these callbacks aren't needed anymore. BUG=none TEST=bots stay green; by hand with simple_vertex_shader_ppapi Review URL: http://codereview.chromium.org/9253020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118344 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r118525 / Re-land r118240 - the build failure was a flake.dpranke@chromium.org2012-01-1914-35/+80
| | | | | | | | | | | | This change re-enables building gles2_c_lib as a component. TBR=gman@chromium.org BUG=107735 TEST=waterfall stays green Review URL: https://chromiumcodereview.appspot.com/9150022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118263 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r118240 - gles_2_c_lib as a component.dpranke@chromium.org2012-01-1914-80/+35
| | | | | | | | | | | | Broke compile on windows. TBR=gman@chromium.org BUG=107735 TEST=waterfall greens up again Review URL: https://chromiumcodereview.appspot.com/9264003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118252 0039d316-1c4b-4281-b951-d872f2087c98
* Fix RenderbufferManager to handle deleted objectsgman@chromium.org2012-01-193-13/+48
| | | | | | | | | | | | TEST=unit tests BUG=110198 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9253027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118243 0039d316-1c4b-4281-b951-d872f2087c98
* Fix BufferManager's handling of deleted buffers.gman@chromium.org2012-01-195-71/+112
| | | | | | | | | | | | | | | | The BufferManager was originally designed assuming you can't use a deleted buffer. Now that you can there were some bugs. TEST=unit tests BUG=110198 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9252032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118242 0039d316-1c4b-4281-b951-d872f2087c98
* This change makes gles2_c_lib work as a component. It introduces a ↵dpranke@chromium.org2012-01-1914-35/+80
| | | | | | | | | | | | | gles2_c_lib_export.h file, and ensures that all of the GL shim symbols are exported properly. This also fixes a couple of prototype issues in glTexStorage2DEXT and glEnableFeatureCHROMIUM along the way. R=gman@chromium.org TEST=waterfall, specifically platform/chromium/compositing/accelerated-drawing tests don't crash Review URL: https://chromiumcodereview.appspot.com/8956051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118240 0039d316-1c4b-4281-b951-d872f2087c98
* Fix TextureManager optimizations.gman@chromium.org2012-01-199-577/+604
| | | | | | | | | | | | | | | | | | | | | | The issue was the texture manager was originaly written assuming you could not use deleted textures. Now that we allow using deleted textures (per OpenGL ES), textures that get manipulated after being removed from the TextureManager would mess up it's bookkeeping. So no every TextureInfo has a pointer to it's manager. On destruction it will call into the TextureManager to update the bookkeeping. That means all TextureInfos have to be deleted before the TextureManager. R=apatrick@chromium.org BUG=109900 TEST=unit tests Review URL: http://codereview.chromium.org/9211008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118189 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Stop freeing the command buffer when a tab goes to the background. gman@chromium.org2012-01-181-0/+1
| | | | | | | | | | | | | | This essentially reverts functionality" This reverts commit 95bba3796b53af298d6ebbd133e148d6579c3bdc. BUG=103989,108305,108176 TEST=none Review URL: http://codereview.chromium.org/9211017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118140 0039d316-1c4b-4281-b951-d872f2087c98
* Add cmd line switch to make compileShader always succeed.gman@chromium.org2012-01-183-2/+12
| | | | | | | | | | | | | | | | This is so we can test WebGL Conformance tests since the GLSL spec 1.0.17 10.27 says that compileShader can succeed for bad shaders as long as linkProgram doesn't link. TEST=ran OpenGL ES 2.0 conformance tests BUG=110478 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9242016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118022 0039d316-1c4b-4281-b951-d872f2087c98
* Add --enable-gpu-debugging to call glGetError after every command in the ↵gman@chromium.org2012-01-145-9/+59
| | | | | | | | | | | | command buffer. TEST=none BUG=107299 Review URL: http://codereview.chromium.org/8994013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117775 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Revert 116821 - Make StrictSharedIdHandler free its unused ids."gman@chromium.org2012-01-122-2/+26
| | | | | | | | | | | | | | Now that the command buffer no-op if the GPU process crashes this CL should work again BUG=109575,109330 TEST=Ran gpu_tests mentioned in bug TBR=zmo@chromium.org Review URL: http://codereview.chromium.org/9187032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117334 0039d316-1c4b-4281-b951-d872f2087c98
* Fix GLES2 Conformance test supportgman@chromium.org2012-01-111-25/+24
| | | | | | | | | | | | TEST=ran GLES2 Conformance tests BUG=none R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9166034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117295 0039d316-1c4b-4281-b951-d872f2087c98
* Make GLES2Implementation handl failed allocationgman@chromium.org2012-01-114-11/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This passes all the current unit tests I'll write more tests to check this stuff but I want to get it in the tree asap to see if it stops the crashes Note. This is step 2 of 4 Step 1 was doing the same for GLES2CmdHelper and CommandBufferHelper Step 2 is this Step 3 is make these trigger lost context Step 4 is write tests TEST=none BUG=109694 false to NULL Make GLES2CmdHelper and CommandBufferHelper handle failed allocation This passes all the current unit tests. I'll write more tests to check this stuff but I want to get it the tree asap to see if it stop the crashes Note. This is only step 1 of about 4 steps Step 2 is make GLES2Implementation do the same Step 3 is make both of these trigger lost context Step 4 is write tests. TEST=none BUG=109694 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9168022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117204 0039d316-1c4b-4281-b951-d872f2087c98
* Make GLES2CmdHelper and CommandBufferHelper handle failed allocationgman@chromium.org2012-01-116-584/+1092
| | | | | | | | | | | | | | | | | | | | | This passes all the current unit tests. I'll write more tests to check this stuff but I want to get it the tree asap to see if it stop the crashes Note. This is only step 1 of about 4 steps Step 2 is make GLES2Implementation do the same Step 3 is make both of these trigger lost context Step 4 is write tests. TEST=none BUG=109694 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9166017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117135 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 116821 - Make StrictSharedIdHandler free its unused ids.zmo@google.com2012-01-092-27/+3
| | | | | | | | | | | | | TEST=none BUG=109330,109575 Review URL: http://codereview.chromium.org/9109030 TBR=gman@chromium.org Review URL: http://codereview.chromium.org/9147001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116854 0039d316-1c4b-4281-b951-d872f2087c98
* Make StrictSharedIdHandler free its unused ids.gman@chromium.org2012-01-072-3/+27
| | | | | | | | | | TEST=none BUG=109330 Review URL: http://codereview.chromium.org/9109030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116821 0039d316-1c4b-4281-b951-d872f2087c98
* Move paint aggregator and the completion callback factory.brettw@chromium.org2012-01-061-0/+1
| | | | | | | | | | | [Reland of 116281] Move paint aggregator and the completion callback factory to the ppapi/helpers directory since they're not strictly wrappers. Review URL: http://codereview.chromium.org/9030001 Review URL: http://codereview.chromium.org/9122012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116759 0039d316-1c4b-4281-b951-d872f2087c98
* Remove task.h and finish base::Bind() migration.ajwong@chromium.org2012-01-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Over 341 CLs, in ~3 months, touching 3251 unique files! Top 5 most CLs: (121) jhawkins ( 45) dcheng ( 24) achuith ( 23) csilv ( 12) tfarina ( 12) groby ~1000 files touched: (918) jhawkins 100+ files touched: (486) ajwong (385) willchan (372) dcheng (126) csilv (123) fischman (112) sergeyu 49+ files touched: (65) tfarina (57) acolwell (52) adamk (49) tzik BUG=35223 TEST=existing Review URL: http://codereview.chromium.org/9114020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116748 0039d316-1c4b-4281-b951-d872f2087c98
* Bind to eglCreateImageKHR and eglDestroyImageKHR when KHR_image_base is ↵apatrick@chromium.org2012-01-061-1/+4
| | | | | | | | | | | | advertised by EGL. At the moment we only bind to them if KHR_image (a superset) is advertised. Because we determine to which extension each entry point belongs by parsing the header files and those entry points are not listed for KHR_image_base, I had to add some code to the autogenerator script to to add extra extensions for each entry point. Review URL: http://codereview.chromium.org/9111039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116640 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity: Add some NULL checks.thestig@chromium.org2012-01-051-5/+5
| | | | | | | | | | CID=101669 BUG=none TEST=none Review URL: http://codereview.chromium.org/8989027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116578 0039d316-1c4b-4281-b951-d872f2087c98
* Undo GL_EXT_texture_storage disable, fixup internal format for non-GLES2.jbates@chromium.org2012-01-043-49/+24
| | | | | | | | | | | | Desktop GL does not support BGRA as an internal format for glTexStorage, but GLES2 does. Since we provide an ES2 implementation to client code, we need to convert BGRA to RGBA when running on top of non-ES2 GL implementations. BUG=107782 TEST=see bug for manual test Review URL: http://codereview.chromium.org/9008071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116378 0039d316-1c4b-4281-b951-d872f2087c98
* Track shared memory used by GPU processgman@chromium.org2012-01-044-29/+25
| | | | | | | | | | | | TEST=DCHECK BUG=79762 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9027016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116366 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 116281 - Move paint aggregator and the completion callback factory.brettw@chromium.org2012-01-041-1/+0
| | | | | | | | | | | Move paint aggregator and the completion callback factory to the ppapi/helpers directory since they're not strictly wrappers. Review URL: http://codereview.chromium.org/9030001 TBR=brettw@chromium.org Review URL: http://codereview.chromium.org/9086003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116284 0039d316-1c4b-4281-b951-d872f2087c98
* Move paint aggregator and the completion callback factory.brettw@chromium.org2012-01-041-0/+1
| | | | | | | | Move paint aggregator and the completion callback factory to the ppapi/helpers directory since they're not strictly wrappers. Review URL: http://codereview.chromium.org/9030001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116281 0039d316-1c4b-4281-b951-d872f2087c98
* Input latency performance test that uses tracing (retry)jbates@chromium.org2012-01-041-3/+8
| | | | | | | | | | | | | | Original review: http://codereview.chromium.org/8883005/ This CL adds a new gyp target called performance_browser_tests to run the new input latency test as a browser test. See the comments in latency_tests.cc for an overview of how latency is measured. TBR=jbates@chromium.org Review URL: http://codereview.chromium.org/9077001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116271 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 116191 - Input latency performance test that uses tracing.jbates@chromium.org2012-01-031-8/+3
| | | | | | | | | | | | | This CL adds a new gyp target called performance_browser_tests to run the new input latency test as a browser test. See the comments in latency_tests.cc for an overview of how latency is measured. Review URL: http://codereview.chromium.org/8883005 TBR=jbates@chromium.org Review URL: http://codereview.chromium.org/9071018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116202 0039d316-1c4b-4281-b951-d872f2087c98
* Input latency performance test that uses tracing.jbates@chromium.org2012-01-031-3/+8
| | | | | | | | | | This CL adds a new gyp target called performance_browser_tests to run the new input latency test as a browser test. See the comments in latency_tests.cc for an overview of how latency is measured. Review URL: http://codereview.chromium.org/8883005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116191 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity fixes for uninitialized varsgroby@chromium.org2011-12-291-1/+2
| | | | | | | | | | CID=102348, 102334, 100563, 102456, 102012, 101525, 101526, 101330, 101329 TEST=none Review URL: http://codereview.chromium.org/9006028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116003 0039d316-1c4b-4281-b951-d872f2087c98
* Disable GL_EXT_texture_storage support in Linux.jbates@chromium.org2011-12-292-3/+37
| | | | | | | | | | | Our implementation is not compatible with newer Nvidia driver versions. This should be reenabled when a workaround is found. BUG=107782 TEST=see bug report for manual test (linux only) Review URL: http://codereview.chromium.org/8989064 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115983 0039d316-1c4b-4281-b951-d872f2087c98
* Add tracking of backbuffer memory to command buffergman@chromium.org2011-12-234-6/+116
| | | | | | | | | | | | TEST=none BUG=79762 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/8958027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115715 0039d316-1c4b-4281-b951-d872f2087c98
* Track buffer memory in command buffergman@chromium.org2011-12-232-3/+28
| | | | | | | | | | | | TEST=none, DCHECK BUG=79762 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9032002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115710 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a few issues with texture memory tracking.gman@chromium.org2011-12-233-59/+85
| | | | | | | | | | | | TEST=unit tests BUG=79762 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9027014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115680 0039d316-1c4b-4281-b951-d872f2087c98
* Add renderbuffer memory tracinggman@chromium.org2011-12-233-3/+50
| | | | | | | | | | | | TEST=none BUG=79762 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/9022015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115657 0039d316-1c4b-4281-b951-d872f2087c98
* Start adding memory tracking to GPU processgman@chromium.org2011-12-222-7/+50
| | | | | | | | | | | | | This one only tracks texture memory and does not include the backbuffer. BUG=none TEST=ran with about:tracing Review URL: http://codereview.chromium.org/8949027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115532 0039d316-1c4b-4281-b951-d872f2087c98
* Fix BufferData so it does not trigger single threaded check.gman@chromium.org2011-12-222-1/+27
| | | | | | | | | | | | | BufferData was calling BufferSubData directly instead of BufferSubDataHelper. TEST=unit test BUG=none Review URL: http://codereview.chromium.org/9021043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115531 0039d316-1c4b-4281-b951-d872f2087c98
* Stop freeing the command buffer when a tab goes to the background. This ↵vangelis@chromium.org2011-12-221-1/+0
| | | | | | | | | | | essentially reverts functionality added by revision 114602 . It is a suspect for the increased renderer crash rates since 18.0.973.0 . BUG=108305,108176 Review URL: http://codereview.chromium.org/9020039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115471 0039d316-1c4b-4281-b951-d872f2087c98
* Make texImage2D with NULL always clear texture.gman@chromium.org2011-12-212-4/+15
| | | | | | | | | | | | | | | | | | | | | | | I had made an optimization that if you call texImage2D with NULL and format, type, and size were all the same then I wouldn't call texImage2D at all but that broke WebGL conformance While it's not needed for OpenGL ES 2.0 conformance it's probably not enough of an optimization to matter so... This patch just marks the texture level as uncleared. The deferred clearing code will then clear it later if it needs to be cleared TEST=unit tests BUG=108138 R=kbr@chromium.org Review URL: http://codereview.chromium.org/9006043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115309 0039d316-1c4b-4281-b951-d872f2087c98
* Fix IsExtensionAvailable so it calls GetStringHelpergman@chromium.org2011-12-216-42/+93
| | | | | | | | | | | | | | This is so it does not trigger the single threaded checks TEST=unit test BUG=none R=zmo@chromium.org Review URL: http://codereview.chromium.org/9006021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115265 0039d316-1c4b-4281-b951-d872f2087c98
* Optimize glCheckFramebuffer checks.gman@chromium.org2011-12-207-12/+395
| | | | | | | | | | | | | This CL basically tries to cache the "framebuffer complete" state of framebuffers in the command buffer. TEST=unit tests BUG=102230 Review URL: http://codereview.chromium.org/9008001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115096 0039d316-1c4b-4281-b951-d872f2087c98
* Fix PixelStorei so it does not recursively call GL functionsgman@chromium.org2011-12-186-33/+2052
| | | | | | | | | | | | Also, added a bunch of auto generated unit tests. TEST=unit test BUG=107914 Review URL: http://codereview.chromium.org/8981005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114940 0039d316-1c4b-4281-b951-d872f2087c98
* Don't tell browser to swap until swap actually executed.backer@chromium.org2011-12-163-35/+29
| | | | | | | | | | By deferring to fence, we're ensuring that the GL commands are executed GPU side before sending a message to the browser to act on them. This is lighter weight than a glFinish because the other commands buffers on the channel (e.g. WebGL) can continue executing while we're waiting for the fence. TEST=by hand building use_aura running http://webglsamples.googlecode.com/hg/aquarium/aquarium.html Review URL: http://codereview.chromium.org/8497015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114798 0039d316-1c4b-4281-b951-d872f2087c98
* Fix standalone gl demos and conformance testsgman@chromium.org2011-12-152-0/+12
| | | | | | | | | | TEST=demos run BUG=none Review URL: http://codereview.chromium.org/8947016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114697 0039d316-1c4b-4281-b951-d872f2087c98
* Disable 5ms flusher on Android to reduce kernel thrashing.nduca@chromium.org2011-12-151-1/+5
| | | | | | Review URL: http://codereview.chromium.org/8956001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114688 0039d316-1c4b-4281-b951-d872f2087c98
* Free the command buffer when tabs are switchedgman@chromium.org2011-12-1510-65/+110
| | | | | | | | | | | | | | GLES2Implemetation::FreeEverything now fress everything it can. the transfer buffer, the command buffer and any unused mapped buffer (glMapSubXXX). BUG=103989 TEST=unit tests Review URL: http://codereview.chromium.org/8953006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114602 0039d316-1c4b-4281-b951-d872f2087c98
* Log GLenums as strings in servicegman@chromium.org2011-12-142-4/+38
| | | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/8936011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114516 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Reverting as this is suspected of causing check_deps failure on ↵gman@chromium.org2011-12-144-3/+207
| | | | | | | | | | | | | | Linux bot" This reverts commit 84af7c826dcee603969734c4fb45047f71f1a244. BUG=none TEST=none TBR=apatrick@chromium.org Review URL: http://codereview.chromium.org/8914016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114491 0039d316-1c4b-4281-b951-d872f2087c98