summaryrefslogtreecommitdiffstats
path: root/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Revert 84284 - Merge gpu_trace_event back into ↵scheib@chromium.org2011-05-058-72/+837
| | | | | | | | | base/debug/trace_event.Initial land attempt at http://codereview.chromium.org/6551019/gpu_trace_event fork at http://codereview.chromium.org/6691013- gpu_trace_event renamed to base/debug/trace_event and modified as appropriate for base::debug- Unit Tests implemented for trace_event- gpu_common library removed (was added only for gpu_trace_event)- Existing calls to trace_event suffixed with _ETW to make ETW calls (see decisions and incremental plans at end of 6551019)- GPU trace calls renamed to new calls.- Tracing switch removed from test_shell, as linux log file support removed.BUG=79509TEST=trace_event_win_unittest and about:gpuReview URL: http://codereview.chromium.org/6862002 TBR=scheib@chromium.org Review URL: http://codereview.chromium.org/6933035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84293 0039d316-1c4b-4281-b951-d872f2087c98
* Merge gpu_trace_event back into base/debug/trace_event.scheib@chromium.org2011-05-058-837/+72
| | | | | | | | | | | | | | | | | | | Initial land attempt at http://codereview.chromium.org/6551019/ gpu_trace_event fork at http://codereview.chromium.org/6691013 - gpu_trace_event renamed to base/debug/trace_event and modified as appropriate for base::debug - Unit Tests implemented for trace_event - gpu_common library removed (was added only for gpu_trace_event) - Existing calls to trace_event suffixed with _ETW to make ETW calls (see decisions and incremental plans at end of 6551019) - GPU trace calls renamed to new calls. - Tracing switch removed from test_shell, as linux log file support removed. BUG=79509 TEST=trace_event_win_unittest and about:gpu Review URL: http://codereview.chromium.org/6862002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84284 0039d316-1c4b-4281-b951-d872f2087c98
* Fix garbage seen on Mac OS X when toggling compositor and resizingkbr@google.com2011-05-042-3/+8
| | | | | | | | | | | | | window by avoiding descheduling a given command buffer at a couple of inopportune times. The fact that these fixes work indicates that the overall IOSurface handling needs work, but these fixes get us back to a working state. BUG=80602 TEST=none Review URL: http://codereview.chromium.org/6927024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84131 0039d316-1c4b-4281-b951-d872f2087c98
* Allow gpu ringbuffer to wrap around.jbauman@chromium.org2011-05-032-13/+27
| | | | | | | | | | | The ringbuffer was unwilling to wrap around unless the last block filled it up completely - otherwise it would have to wait until it was completely empty. Fix this in the most straightforward way by filling the ringbuffer up with a padding block if necessary. BUG=80946 TEST= Review URL: http://codereview.chromium.org/6901138 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83924 0039d316-1c4b-4281-b951-d872f2087c98
* Roll ANGLE r609:r626apatrick@chromium.org2011-05-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revision: 626 Author: apatrick@chromium.org Date: 5:24:23 PM, Thursday, April 28, 2011 Message: Fix compilation errors in translator.cpp. Review URL: http://codereview.appspot.com/4445073 ---- Modified : /trunk/samples/translator/translator.cpp Modified : /trunk/src/common/version.h Revision: 625 Author: jbauman@chromium.org Date: 4:19:51 PM, Thursday, April 28, 2011 Message: Don't constantly recreate index buffers. Recreating index buffers for closing loops can take a long time, so use a streaming index buffer instead. BUG= TEST= Review URL: http://codereview.appspot.com/4438080 ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Context.cpp Modified : /trunk/src/libGLESv2/Context.h Revision: 624 Author: benvanik@google.com Date: 1:11:54 PM, Thursday, April 28, 2011 Message: Updating resource types on Context (Framebuffers and Fences) to use hash_map, as done to other types in r615. Issue=148 Signed-off-by: Daniel Koch ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Context.h Revision: 623 Author: benvanik@google.com Date: 12:44:39 PM, Thursday, April 28, 2011 Message: Unifying resource handle allocation code with an allocator optimized for O(1) allocs/releases. Issue=143 Signed-off-by: Daniel Koch ---- Modified : /trunk/src/build_angle.gyp Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Context.cpp Modified : /trunk/src/libGLESv2/Context.h Added : /trunk/src/libGLESv2/HandleAllocator.cpp Added : /trunk/src/libGLESv2/HandleAllocator.h Modified : /trunk/src/libGLESv2/ResourceManager.cpp Modified : /trunk/src/libGLESv2/ResourceManager.h Modified : /trunk/src/libGLESv2/libGLESv2.vcproj Revision: 622 Author: daniel@transgaming.com Date: 9:20:58 AM, Thursday, April 28, 2011 Message: Handle null pointer produced by vertex buffer lock Issue=120 TRAC #16558 Signed-off-by: Daniel Koch Author: Nicolas Capens (original patch by Jacob Benoit) ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Blit.cpp Revision: 620 Author: daniel@transgaming.com Date: 11:36:43 AM, Tuesday, April 26, 2011 Message: Add MapLongVariableNames files to standalone vcproj ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/compiler/translator_common.vcproj Revision: 619 Author: zmo@google.com Date: 6:30:07 PM, Friday, April 22, 2011 Message: Implement shader identifier name mapping. The name mapping happens when an identifier is longer than 32 characters. The name mapping is behind a flag, so it won't happen by default. Also, functions to query the mapped names are added. The purpose of this CL is for the drivers that can't handle long names. For example, linux NVIDIA driver can't handle 256 character name, whereas WebGL spec requires that. This CL also fixes the issue that some of the TIntermSymbols' ids are 0s. ANGLEBUG=144 TEST=test manually with shaders with long identifier names. Review URL: http://codereview.appspot.com/4428058 ---- Modified : /trunk/src/common/version.h Modified : /trunk/include/GLSLANG/ShaderLang.h Modified : /trunk/src/build_angle.gyp Modified : /trunk/src/compiler/Compiler.cpp Added : /trunk/src/compiler/MapLongVariableNames.cpp Added : /trunk/src/compiler/MapLongVariableNames.h Modified : /trunk/src/compiler/ParseHelper.cpp Modified : /trunk/src/compiler/ParseHelper.h Modified : /trunk/src/compiler/ShHandle.h Modified : /trunk/src/compiler/ShaderLang.cpp Modified : /trunk/src/compiler/VariableInfo.cpp Modified : /trunk/src/compiler/VariableInfo.h Modified : /trunk/src/compiler/glslang.y Modified : /trunk/src/compiler/glslang_tab.cpp Modified : /trunk/src/compiler/glslang_tab.h Modified : /trunk/src/compiler/intermediate.h Revision: 618 Author: daniel@transgaming.com Date: 4:33:27 AM, Friday, April 22, 2011 Message: Use StretchRect to speed up simple blits. Fixed copy position transformation. TRAC #16494 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Blit.cpp Modified : /trunk/src/libGLESv2/Blit.h Modified : /trunk/src/libGLESv2/Texture.cpp Revision: 617 Author: daniel@transgaming.com Date: 9:18:50 PM, Thursday, April 21, 2011 Message: Advertise depthbuffer-less surface configs. TRAC #16493 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libEGL/Config.cpp Modified : /trunk/src/libEGL/Display.cpp Modified : /trunk/src/libEGL/Surface.cpp Revision: 616 Author: daniel@transgaming.com Date: 9:17:57 PM, Thursday, April 21, 2011 Message: Heuristically optimize buffer usage. TRAC #16343 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Buffer.cpp Modified : /trunk/src/libGLESv2/Buffer.h Modified : /trunk/src/libGLESv2/IndexDataManager.cpp Modified : /trunk/src/libGLESv2/VertexDataManager.cpp Revision: 615 Author: daniel@transgaming.com Date: 8:03:48 AM, Thursday, April 14, 2011 Message: Use a hash map for faster resource lookups. TRAC #14871 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/Program.cpp Modified : /trunk/src/libGLESv2/ResourceManager.h Revision: 614 Author: daniel@transgaming.com Date: 7:58:33 AM, Wednesday, April 13, 2011 Message: Optimized prepareVertexData and protect against NULL pointers. TRAC #14871 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/IndexDataManager.cpp Modified : /trunk/src/libGLESv2/VertexDataManager.cpp Revision: 613 Author: daniel@transgaming.com Date: 7:57:16 AM, Wednesday, April 13, 2011 Message: Move the vertex declaration cache to a helper class. TRAC #14871 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/libGLESv2/Context.cpp Modified : /trunk/src/libGLESv2/Context.h Revision: 612 Author: daniel@transgaming.com Date: 7:56:47 AM, Wednesday, April 13, 2011 Message: Eliminate lookupAttributeMapping. TRAC #14871 Signed-off-by: Daniel Koch Author: Nicolas Capens ---- Modified : /trunk/src/libGLESv2/VertexDataManager.cpp Modified : /trunk/src/libGLESv2/Context.cpp Modified : /trunk/src/libGLESv2/Context.h Modified : /trunk/src/libGLESv2/VertexDataManager.h Revision: 609 Author: jbauman@chromium.org Date: 11:59:51 AM, Wednesday, April 06, 2011 Message: Profiling shows that creating and destroying vertex declarations is extremely expensive, so we can keep a 16-element cache around to speed that up. BUG= TEST=JSGameBench Review URL: http://codereview.appspot.com/4358051 ---- Modified : /trunk/src/common/version.h Modified : /trunk/src/libGLESv2/VertexDataManager.cpp Modified : /trunk/src/libGLESv2/VertexDataManager.h TEST=tryBUG=none Review URL: http://codereview.chromium.org/6865035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83749 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Issue that glProgramInfoLog was not called if program did not link.gman@chromium.org2011-04-2911-155/+337
| | | | | | | | | TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/6904077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83523 0039d316-1c4b-4281-b951-d872f2087c98
* Rework FlushSync to return early if commands have been processed since the ↵piman@google.com2011-04-2828-1335/+83
| | | | | | | | | | | last update BUG=80480 TEST= Review URL: http://codereview.chromium.org/6883179 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83442 0039d316-1c4b-4281-b951-d872f2087c98
* Base: Adjust dependencies to build with base.dllrvargas@google.com2011-04-282-1/+3
| | | | | | | | BUG=76996 TEST=none Review URL: http://codereview.chromium.org/6883205 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83269 0039d316-1c4b-4281-b951-d872f2087c98
* Removed "compositor" child window that was created by the GPU ↵apatrick@chromium.org2011-04-272-7/+38
| | | | | | | | process.Removed the sync IPC that it used to ask the browser process to resize on Linux. Adapted windows to use the same mechanism.TEST=test webgl pages on windows (ANGLE and GL), linux and mac, run try job on windows, linux, mac. checkdeps failure look unrelated to patch.BUG=77536 Review URL: http://codereview.chromium.org/6880218 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83248 0039d316-1c4b-4281-b951-d872f2087c98
* Base: Adjust dependencies to build with base.dllrvargas@google.com2011-04-261-0/+7
| | | | | | | | BUG=76996 TEST=none Review URL: http://codereview.chromium.org/6894040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83082 0039d316-1c4b-4281-b951-d872f2087c98
* gpu_trace_event static category pointers are no longer dangling at shutdown.jbates@chromium.org2011-04-262-16/+27
| | | | | | | | | BUG=80184 TEST=tbd Review URL: http://codereview.chromium.org/6883150 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82963 0039d316-1c4b-4281-b951-d872f2087c98
* Add a yield command to the command buffer.piman@google.com2011-04-239-11/+73
| | | | | | | | | | | This allows more graceful scheduling so that waiting on the previous frame's swapbuffers doesn't end up being a Finish. BUG=none TEST=check in about:gpu and verify that SwapBuffers in the renderer process actually only waits for the previous SwapBuffers in the gpu process. Review URL: http://codereview.chromium.org/6899037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82759 0039d316-1c4b-4281-b951-d872f2087c98
* Replaced std::string argument storage in gpu_trace_event with faster ↵jbates@chromium.org2011-04-222-23/+212
| | | | | | | | | | | | | TraceValue. Second try to work around arm NULL definition bug. previous review: http://codereview.chromium.org/6877101 BUG=80172 TEST=tbd Review URL: http://codereview.chromium.org/6894016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82696 0039d316-1c4b-4281-b951-d872f2087c98
* Update DCHECK() usage to utilize the more expressive debugging functions.kushi.p@gmail.com2011-04-221-2/+2
| | | | | | | | BUG=58409 Review URL: http://codereview.chromium.org/6891008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82639 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Add traces for some gl calls that can be slowpiman@google.com2011-04-221-0/+4
| | | | | | | | | BUG=none TEST=about:gpu Review URL: http://codereview.chromium.org/6897001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82625 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 82620 - Replaced std::string argument storage in gpu_trace_event with ↵thestig@chromium.org2011-04-222-203/+14
| | | | | | | | | faster TraceAnyTypeBUG=80172TEST=Review URL: http://codereview.chromium.org/6877101 TBR=jbates@chromium.org Review URL: http://codereview.chromium.org/6896016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82621 0039d316-1c4b-4281-b951-d872f2087c98
* Replaced std::string argument storage in gpu_trace_event with faster ↵jbates@chromium.org2011-04-222-14/+203
| | | | | | | | | | | TraceAnyType BUG=80172 TEST= Review URL: http://codereview.chromium.org/6877101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82620 0039d316-1c4b-4281-b951-d872f2087c98
* Quick fix so we can bump DEPS of Chrome in NaClnfullagar@google.com2011-04-221-1/+20
| | | | | | | | | | | - stub out GPU_TRACE_EVENTn on #if defined(__native_client__) builds and avoid pulling in base/*.h files. BUG=none TEST=trybots Review URL: http://codereview.chromium.org/6900004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82613 0039d316-1c4b-4281-b951-d872f2087c98
* Chrome displays the wrong thing if FBO is left bound in WebGL.zmo@google.com2011-04-201-9/+12
| | | | | | | | | | Fix a webgl bug in command buffer: if a user created fbo is bound, compositor doesn't get the correct frame. The issue is that currently multisampled framebuffer blit is incorrectly skipped if a user created fbo is bound. BUG=79750 TEST=bots green, test case attached in bug 79750 behaves correctly. Review URL: http://codereview.chromium.org/6873099 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82201 0039d316-1c4b-4281-b951-d872f2087c98
* With latch support and higher level frame throttling, we no longer need to ↵jbates@chromium.org2011-04-205-62/+11
| | | | | | | | | | | limit SwapBuffers calls by using glSet/TestFenceNV in GpuScheduler. BUG=79940 TEST=open page with CSS 3D transform animation; open about:gpu and start tracing; verify that between frames, there are not many short calls to ProcessCommands Review URL: http://codereview.chromium.org/6873095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82197 0039d316-1c4b-4281-b951-d872f2087c98
* instrumented gles2 commands that call glFinish so that they show up in ↵jbates@chromium.org2011-04-191-0/+21
| | | | | | | | | | | about:gpu trace. BUG=79929 TEST=start trace in about:gpu; load shiny teapot demo; stop trace and verify occurrence of various "GLES2::" commands in the trace. Review URL: http://codereview.chromium.org/6883057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82155 0039d316-1c4b-4281-b951-d872f2087c98
* Updated event trace code to stop on buffer full condition for any child ↵jbates@chromium.org2011-04-194-0/+27
| | | | | | | | | | | process. Added more trace events to show expensive blocking IPCs in renderer process. BUG=79510 TEST=start trace in about:gpu; open some WebGL windows; when trace Buffer usage reaches 100%, verify that the trace is ended Review URL: http://codereview.chromium.org/6870020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82115 0039d316-1c4b-4281-b951-d872f2087c98
* GpuScheduler no longer spins when it is waiting on a latch.jbates@chromium.org2011-04-186-7/+36
| | | | | | | | | BUG=79632 TEST=run trace in about:gpu; observe the number of times the GPU process sequentially calls WaitLatch; verify it is not spinning. Review URL: http://codereview.chromium.org/6874029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82033 0039d316-1c4b-4281-b951-d872f2087c98
* Command buffer: fix a wrong error for glDrawArrays/glDrawElements/glClear if ↵zmo@google.com2011-04-151-1/+1
| | | | | | | | | | the framebuffer is not complete. BUG=none TEST=none Review URL: http://codereview.chromium.org/6861008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81766 0039d316-1c4b-4281-b951-d872f2087c98
* Landing issue 6828049 on behalf of KushalP.apatrick@chromium.org2011-04-1416-161/+161
| | | | | | | | | | | | | http://codereview.chromium.org/6826049/ Original message: Renaming GPUProcessor to GpuScheduler TEST=try BUG=76585 Review URL: http://codereview.chromium.org/6853027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81667 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a regression in command buffer TexSubImage2D.zmo@google.com2011-04-141-1/+2
| | | | | | | | | BUG=79507 TEST=none TBR=gman@google.com Review URL: http://codereview.chromium.org/6858003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81665 0039d316-1c4b-4281-b951-d872f2087c98
* Trace whenever renderer waits for command buffer space.jbauman@chromium.org2011-04-142-11/+27
| | | | | | | | | | | This lets us determine whether the renderer is spinning waiting for command buffer space to open up. BUG= TEST= Review URL: http://codereview.chromium.org/6833005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81655 0039d316-1c4b-4281-b951-d872f2087c98
* Handle the situation in command buffer when texImage2D fails. Current ↵zmo@google.com2011-04-1310-130/+177
| | | | | | | | | | implementation breaks texImage2D into texImage2D with null data and one or more texSubImage2D calls. If the first texImage2D call fails, all the related texSubImage2D calls should be cancelled. However, at the moment they still get called, thus generates GL errors that shouldn't be generated. This CL fixes this issue. BUG=79172 TEST=unittest, texture-npot.html green Review URL: http://codereview.chromium.org/6839003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81510 0039d316-1c4b-4281-b951-d872f2087c98
* Adds GLContext::LosesAllContextsOnContextLost.amarinichev@chromium.org2011-04-131-3/+4
| | | | | | | | | | | | | | | GLContext::LosesAllContextsOnContextLost specifies whether or not all contexts need to be destroyed when recovering from lost context condition. GpuCommandBufferStub::OnFlush and GpuCommandBufferStub::OnAsyncFlush will instruct soon-to-be-renamed GpuRenderThread to close all channels when the context is lost and LosesAllContextsOnContextLost returns true. From the EGL 1.4 spec: "...On detection of this error, the application must destroy all contexts (by calling eglDestroyContext for each context). To continue rendering the application must recreate any contexts it requires, and subsequently restore any client API state and objects it wishes to use." However even with this change Angle still doesn't recover correctly. BUG=76753 TEST=breakpoint on eglDestroyContext Review URL: http://codereview.chromium.org/6813010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81437 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the incorrect method name override.jbates@chromium.org2011-04-131-0/+3
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/6820079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81338 0039d316-1c4b-4281-b951-d872f2087c98
* implemented latch support in renderer process. this corresponds with a ↵jbates@chromium.org2011-04-1224-99/+138
| | | | | | | | | | | | | webkit patch. https://bugs.webkit.org/show_bug.cgi?id=58003 BUG=72671 TEST=see attachment in bug for test. only green should be seen. Review URL: http://codereview.chromium.org/6810009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81295 0039d316-1c4b-4281-b951-d872f2087c98
* Don't flush trace events until tracing ends.jbauman@chromium.org2011-04-122-12/+19
| | | | | | | | | | | | | Flushing trace events really disrupts the traced process, so don't flush events until tracing has finished. The events would be stored in memory after they were flushed anyway, so this doesn't change much. For this to work we must make sure to flush the events in small batches, so the send doesn't reject them. Also add a limit of around 500000 on the number of trace events, so we don't run out of space due to them. BUG= TEST= Review URL: http://codereview.chromium.org/6826043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81210 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor: Move app/gfx/gl ==> ui/gfx/glbacker@chromium.org2011-03-2814-26/+27
| | | | | | | | | | | This is the final patch in the sequence. Note that gl.gyp is introduced because dependency checking on the Mac is done on a per file (rather than per target) basis. BUG=none TEST=trybots Review URL: http://codereview.chromium.org/6722026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79599 0039d316-1c4b-4281-b951-d872f2087c98
* Initialize a few uninitialized members in GPU classes.finnur@chromium.org2011-03-287-12/+26
| | | | | | | | | BUG=None TEST=None CID=12914, 15729, 12761, 8585, 14365, 15761, 14796, 15865. Review URL: http://codereview.chromium.org/6713127 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79544 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-2824-50/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* Workground for glGenerateMipmap bug in some drivers.gman@chromium.org2011-03-265-2/+67
| | | | | | | | | | | TEST=unit tests BUG=72601 R=zmo@chromium.org Review URL: http://codereview.chromium.org/6749014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79499 0039d316-1c4b-4281-b951-d872f2087c98
* Make Command Buffer limit count for glUniformXXv calls.gman@chromium.org2011-03-2510-83/+474
| | | | | | | | | | | TEST=unit tests BUG=77233 R=zmo@chromium.org, Review URL: http://codereview.chromium.org/6713094 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79421 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor: Move app/surface to ui/gfx/surface.backer@chromium.org2011-03-252-2/+3
| | | | | | | | | | | | | This is progress towards moving app/gfx/gl to ui/gfx/gl. Currently, surface depends on gl, but gl depends on app_base (which contains surface). This refactor gets rid of this potential cyclic dependency. surface.gyp is in a separate file (not a .gypi include) because cyclic dependency checking is at the file level (not target level). BUG=none TEST=by hand and try bots Review URL: http://codereview.chromium.org/6718027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79396 0039d316-1c4b-4281-b951-d872f2087c98
* Implement latch system to help with GPU compositing flow control.gman@chromium.org2011-03-2418-9/+311
| | | | | | | | | TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/6719014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79218 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bug in shader and program managers.gman@chromium.org2011-03-236-29/+112
| | | | | | | | | | | | | | | | | The bug was that the code would search by id instead of by pointer. This meant it was possible to free the wrong thing (ie, pass in an info with id=4 and free a different info that also happened to have id=4). This was most likely to happen when calling MarkAsDeleted since MarkAsDelete sets the id to 0. TEST=unit tests BUG=75629 R=apatrick@chromium.org Review URL: http://codereview.chromium.org/6721010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79130 0039d316-1c4b-4281-b951-d872f2087c98
* Take the ANGLE path for glRenderbufferStorageMultisample when on ANGLE.bsalomon@google.com2011-03-231-2/+7
| | | | | | Review URL: http://codereview.chromium.org/6724004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79121 0039d316-1c4b-4281-b951-d872f2087c98
* Check the GPU watchdog after processing every 3D command.jbauman@chromium.org2011-03-232-2/+13
| | | | | | | | | | | Reduce the chance that a long stream of expensive 3D commands will cause the watchdog to go off by checking the watchdog after every 3D command. BUG=76603 TEST=none Review URL: http://codereview.chromium.org/6715006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79097 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit of reverted CL: http://codereview.chromium.org/6677105twiz@chromium.org2011-03-211-0/+4
| | | | | | | | | Addition of GL-redirecting mechanism for the Skia/GPU back-end. During execution of the layout tests (DumpRenderTree), all GL-calls are invoked via Mesa. A GL re-direction mechanism was added to skia in revision (http://code.google.com/p/skia/source/detail?r=937) These changes populate the skia re-direction interface with the gl implementation currently in use in Chrome: The app\gfx\gl bindings. R=kbr, bsalomon Review URL: http://codereview.chromium.org/6708066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78941 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bug in GPU_TRACE_EVENT_END.nduca@chromium.org2011-03-211-3/+3
| | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/6716008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78937 0039d316-1c4b-4281-b951-d872f2087c98
* Change GL_EXT_texture_compression_s3tc to GL_CHROMIUM_texture_compression_dxt3gman@chromium.org2011-03-213-11/+32
| | | | | | | | | | | | and GL_CHROMIUM_texture_compression_dxt5 because we don't support all the features of GL_EXT_texture_compression_s3tc. TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/6715005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78926 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 78801 - Addition of GL-redirecting mechanism for the Skia/GPU ↵bradnelson@google.com2011-03-191-4/+0
| | | | | | | | | | | | | back-end. During execution of the layout tests (DumpRenderTree), all GL-calls are invoked via Mesa. A GL re-direction mechanism was added to skia in revision (http://code.google.com/p/skia/source/detail?r=937) These changes populate the skia re-direction interface with the gl implementation currently in use in Chrome: The app\gfx\gl bindings. R=kbr, bsalomon Review URL: http://codereview.chromium.org/6677105 TBR=twiz@chromium.org R=* Review URL: http://codereview.chromium.org/6712050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78808 0039d316-1c4b-4281-b951-d872f2087c98
* Addition of GL-redirecting mechanism for the Skia/GPU back-end. During ↵twiz@chromium.org2011-03-191-0/+4
| | | | | | | | execution of the layout tests (DumpRenderTree), all GL-calls are invoked via Mesa. A GL re-direction mechanism was added to skia in revision (http://code.google.com/p/skia/source/detail?r=937) These changes populate the skia re-direction interface with the gl implementation currently in use in Chrome: The app\gfx\gl bindings. R=kbr, bsalomon Review URL: http://codereview.chromium.org/6677105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78801 0039d316-1c4b-4281-b951-d872f2087c98
* Fix renderbuffer width, height issuesgman@chromium.org2011-03-198-20/+85
| | | | | | | | | TEST=unit tests BUG=76497 Review URL: http://codereview.chromium.org/6708016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78784 0039d316-1c4b-4281-b951-d872f2087c98
* Validate that a GPU transfer buffer's size is valid when it is registered ↵apatrick@chromium.org2011-03-191-28/+27
| | | | | | | | | | | | | | rather than when it is mapped. This cleaned up the code a little because it now doesn't check whether the memory is mapped every time the address and size are requested. Also fixed a very unlikely memory leak of a SharedMemory object. TEST=WebGL/compositor works, try BUG=none Review URL: http://codereview.chromium.org/6688048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78778 0039d316-1c4b-4281-b951-d872f2087c98
* event trace plumbing for multi-process supportjbates@chromium.org2011-03-181-2/+2
| | | | | | | | | | | | related review: http://codereview.chromium.org/6691013/ BUG=none TEST=none Review URL: http://codereview.chromium.org/6694004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78768 0039d316-1c4b-4281-b951-d872f2087c98