| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
After recently implemented support for rendering to 32-bit floating point
textures on ES3, texture's internal format and format do not necessarily
always match. Fix the command decoder code that relied on them matching.
BUG=329605
TEST=gpu_unittests, WebGL conformance tests
Review URL: https://codereview.chromium.org/168983005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252268 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
When using a non X11 build with Ozone, we still have dependencies on
X11. This patch tries to hide X11 and related dependencies when
use_x11=0
Review URL: https://codereview.chromium.org/148643002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251981 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=342525
R=zmo@chromium.org
Review URL: https://codereview.chromium.org/157363007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251786 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: https://codereview.chromium.org/164373006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251659 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=330785
TEST=bots
Review URL: https://codereview.chromium.org/135273002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251591 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(The new name is consistent with base::FreeDeleter.)
Also, update comments to refer to scoped_ptr rather than the deprecated
scoped_ptr_malloc, and convert scoped_ptr_malloc<...,
ScopedPtrAlignedFree> to scoped_Ptr<..., AlignedFreeDeleter>.
R=brettw@chromium.org, dalecurtis@chromium.org, piman@chromium.org, brettw
TBR=piman, tyoshino
Review URL: https://codereview.chromium.org/167663002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251586 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because mailboxes are now just a random number, we don't need to round-trip to
the gpu process to generate them, which lets us get rid of IPCs, layers, etc.
It also means generating a mailbox can't fail any more (even on a lost context),
so, removing some code paths and associated tests.
I'm adding a debug-only verification to ensure the mailboxes are generated from
the crypto-random function (in debug, we burn a byte to compute a mini XOR-check
as a sentinel for "we went through the Generate function"). It's not a secure
check, but should hit incorrect/unsafe usage.
BUG=None
Review URL: https://codereview.chromium.org/165393003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251570 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
That way we can easily change the size later. Security says 64 may be overkill.
BUG=None
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=251306
R=danakj@chromium.org
Review URL: https://codereview.chromium.org/138763009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251453 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- easier to read
- safer since gpu::Mailbox is constant size and checked in the ParamTraits
BUG=None
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=251207
R=danakj@chromium.org, jschuh@chromium.org
Review URL: https://codereview.chromium.org/148003006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251451 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On ES2 with OES_texture_float/OES_texture_half_float support, it is only possible to render to 16-bit half float textures using EXT_color_buffer_half_float. There's no support for rendering to 32-bit float textures in ES2 extensions. On ES3, rendering to some 32-bit float texture formats is exposed with EXT_color_buffer_float, but one must use the sized internal formats specified in ES3 core to do that. To expose this, a new command buffer extension is added which enables clients to directly use the sized internal format GL_RGBA32F.
A similar extension is also added to expose GL_RGB32F on desktop GL platforms for the sake of consistency.
These extensions are available whenever rendering to float textures is available. To support the current version of ANGLE, format conversions back to unsized internal formats are added to ui/gl.
Tests are added to cover this functionality. The new tests also add coverage for the handling of 32-bit float formats on ES2 and on desktop GL that existed before this patch.
BUG=329605
TEST=gpu_unittests, WebGL conformance tests
Review URL: https://codereview.chromium.org/139013008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251329 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GL_MAILBOX_SIZE_CHROMIUM (https://codereview.chromium.org/138763009/)
Reason for revert:
FAILED: c++ -MMD -MF obj/cc/layers/cc_unittests.texture_layer_unittest.o.d -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 -DCHROMIUM_BUILD -DCOMPONENT_BUILD -DTOOLKIT_VIEWS=1 -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_ASH=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_NSS=1 -DUSE_X11=1 -DOS_CHROMEOS=1 -DUSE_XI2_MT=2 -DIMAGE_LOADER_EXTENSION=1 -DENABLE_REMOTING=1 -DENABLE_WEBRTC=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_INPUT_SPEECH -DENABLE_NOTIFICATIONS -DENABLE_HIDPI=1 -DUSE_UDEV -DENABLE_EGLIMAGE=1 -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_BACKGROUND=1 -DENABLE_AUTOMATION=1 -DENABLE_GOOGLE_NOW=1 -DCLD_VERSION=2 -DENABLE_FULL_PRINTING=1 -DENABLE_PRINTING=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_MANAGED_USERS=1 -DENABLE_MDNS=1 -DGTEST_HAS_POSIX_RE=0 -DGL_GLEXT_PROTOTYPES -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_ENABLE_INST_COUNT=0 -DSK_SUPPORT_GPU=1 '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"' -DSK_ENABLE_LEGACY_API_ALIASING=1 -DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1 -DSK_USE_POSIX_THREADS -DSK_DEFERRED_CANVAS_USES_FACTORIES=1 -DUNIT_TEST -DGTEST_HAS_RTTI=0 -DU_USING_ICU_NAMESPACE=0 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -I../../cc/test -I../../cc -I../.. -I../../third_party/khronos -I../../gpu -I../../skia/config -I../../third_party/skia/src/core -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../skia/ext -I../../testing/gmock/include -I../../testing/gtest/include -I../../third_party/icu/source/i18n -I../../third_party/icu/source/common -Werror -pthread -fno-exceptions -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -O2 -fno-ident -fdata-sections -ffunction-sections -funwind-tables -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -Wsign-compare -c ../../cc/layers/texture_layer_unittest.cc -o obj/cc/layers/cc_unittests.texture_layer_unittest.o
In file included from ../../testing/gmock/include/gmock/gmock-spec-builders.h:71:0,
from ../../testing/gmock/include/gmock/gmock-generated-function-mockers.h:43,
from ../../testing/gmock/include/gmock/gmock.h:61,
from ../../cc/layers/texture_layer_unittest.cc:33:
../../testing/gmock/include/gmock/gmock-matchers.h: In member function 'bool testing::internal::EqMatcher<Rhs>::Impl<Lhs>::MatchAndExplain(Lhs, testing::MatchResultListener*) const [with Lhs = const gpu::Mailbox&, Rhs = gpu::Mailbox]':
../../cc/layers/texture_layer_unittest.cc:2173:1: instantiated from here
../../testing/gmock/include/gmock/gmock-matchers.h:784:1: error: no match for 'operator==' in 'lhs == ((const testing::internal::EqMatcher<gpu::Mailbox>::Impl<const gpu::Mailbox&>*)this)->testing::internal::EqMatcher<gpu::Mailbox>::Impl<const gpu::Mailbox&>::rhs_'
../../testing/gmock/include/gmock/gmock-matchers.h:784:1: note: candidate is:
../../testing/gtest/include/gtest/internal/gtest-linked_ptr.h:213:6: note: template<class T> bool testing::internal::operator==(T*, const testing::internal::linked_ptr<T>&)
../../testing/gmock/include/gmock/gmock-matchers.h:784:1: error: control reaches end of non-void function [-Werror=return-type]
Original issue's description:
> Fix (or tag) uses of explicit '64' instead of GL_MAILBOX_SIZE_CHROMIUM
>
> That way we can easily change the size later. Security says 64 may be overkill.
>
> BUG=None
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=251306
TBR=danakj@chromium.org,piman@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=None
Review URL: https://codereview.chromium.org/166853002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251309 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
That way we can easily change the size later. Security says 64 may be overkill.
BUG=None
Review URL: https://codereview.chromium.org/138763009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251306 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Speculative revert to determine whether it is causing the below
WebViewTest.AutoSizeSW failure on the Linux Test bots (e.g.,
http://build.chromium.org/p/chromium.linux/builders/Linux%20Tests%20%28dbg%29%281%29/builds/30888/steps/browser_tests/logs/AutoSizeSW):
FATAL:texture_layer.cc(141)] Check failed: !mailbox.IsValid() || !holder_ref_
|| !mailbox.Equals(holder_ref_->holder()->mailbox()).
This failure also appeared on the trybot run for this CL.
> Use gpu::Mailbox instead of std:string in IPCs
>
> - easier to read
> - safer since gpu::Mailbox is constant size and checked in the ParamTraits
>
> BUG=None
>
> Review URL: https://codereview.chromium.org/148003006
TBR=piman@chromium.org
Review URL: https://codereview.chromium.org/163433008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251281 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
- easier to read
- safer since gpu::Mailbox is constant size and checked in the ParamTraits
BUG=None
Review URL: https://codereview.chromium.org/148003006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251207 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Fix mistake introduced in r247334. Webview needs more tests.
BUG=
Review URL: https://codereview.chromium.org/162523002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251022 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For example, it supports running two GPU threads.
This simplifies the scheduling/queuing logic in InProcessCommandBuffer
a bit and moves the non-thread/queue implementation out to WebView by
allowing for passing in a InProcessCommandBuffer::Service instance
when creating a context.
BUG=332146
Review URL: https://codereview.chromium.org/143023005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250984 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
in CopyTextureCHROMIUM
BUG=342439, 304927
R=kbr@chromium.org, zmo@chromium.org
Review URL: https://codereview.chromium.org/157033009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250827 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of having two global containers for GLInProcessContext
and InProcessCommandBuffer, use a single one for the former
and pass in the service-side share group while we are holding the
lock anyways.
This makes it simpler to support multiple service threads.
BUG=332146
Review URL: https://codereview.chromium.org/158133004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250765 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=322760
TEST=webgl conformance tests
R=kbr@chromium.org,bajones@chromium.org
Review URL: https://codereview.chromium.org/143823020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250683 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Contexts without bind_generates_resource utilize StrictIdHandler.
Binding ungenerated Ids is an error on StrictIdHandler, but there
were still calls made to IdAllocator::MarkAsUsed, which has the
overhead of taking a lock and doing a std::map lookup.
- Changed to generate GL error on service side instead of DCHECK
on client side.
- StrictIdHandler::MarkAsUsedForBind becomes no-op.
- Merged lock functionality of ThreadSafeIdHandlerWrapper up into
the base handlers to reduce indirection and use finer grained
locking.
- Removed unused SharedIdHandler class.
BUG=244968
Review URL: https://codereview.chromium.org/154263011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250681 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously GetSpace() did various calls:
- usable() - Check if buffer is usable.
- AllocateRingBuffer() - Allocate buffer if not already allocated.
- WaitForAvailableEntries() - Yet more checks.
This change shortcuts most calls, reducing to checks on
immediate_entry_count_ and commands_issued_ only, maintaining the old
behavior in terms of internal flushing.
immediate_entry_count_ is 0 if the buffer is unusable or unallocated,
otherwise is limited to min(immediate free space, force flush limit).
commands_issued_ is counted on non-Android platforms, and checks for
force flush condition every kCommandsPerFlushCheck commands.
BUG=340362
Review URL: https://codereview.chromium.org/141133010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250582 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GL is initialized in content::SupportsCoreAnimationPlugins() so
initializing it again hits DCHECKs and breaks things. Depend on
the initialization to occur in SupportsCoreAnimationPlugins()
only, and ensure that it only happens there once.
R=piman
BUG=340954
Review URL: https://codereview.chromium.org/131433004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250316 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This converts the remaining targets that depend on X11 libraries over to
depending on targets from build/linux/system.gyp instead of adding the
libraries manually to the link line. This ensures that the link line is
generated with pkg-config and makes the dependencies a bit tighter by
getting rid of the all_dependent_settings entry in ui/ui.gyp
BUG=339518
Review URL: https://codereview.chromium.org/151713003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250311 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For a long time, we've been using HMAC to sign the mailbox names on the GPU
process. However, we don't actually need the mailbox names to be guaranteed to
be generated by the GPU process, we only need to ensure they're unguessable.
The HMAC signature and verification has several costs:
- the cost to sign the mailbox
- the cost to verify the mailbox
- the initialization cost (e.g. starting NSS in the GPU process)
We can actually save all that cost, by just making the mailbox names
(crypto-)random.
BUG=311259
Review URL: https://codereview.chromium.org/157243002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249922 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG= https://code.google.com/p/nativeclient/issues/detail?id=2832
TEST= run checkdeps
R=piman@chromium.org, thakis@chromium.org
Review URL: https://codereview.chromium.org/140203005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249818 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This is part of a long-running background task to remove the remaining
uses of the unchecked IPC_ENUM_TRAITS() macro.
BUG=246708
Review URL: https://codereview.chromium.org/143573003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249652 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
textures.
BUG=322770
TEST=context-attribute-preserve-drawing-buffer.html on mac
R=bajones@chromium.org
Review URL: https://codereview.chromium.org/133443012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249584 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is to workaround a Mesa driver bug.
BUG=333885
TEST=gpu_unittests, test as mentioned in the bug report
R=bajones@chromium.org, kbr@chromium.org
Review URL: https://codereview.chromium.org/153173002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249547 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now it's hardwired in command buffer.
BUG=340516
TEST=gpu_unittests, webgl conformance tests
R=bajones@chromium.org, kbr@chromium.org
Review URL: https://codereview.chromium.org/147593011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249460 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
gcc warns about sprintf being unsafe in some cases.
Also snprintf is not available under windows.
BUG=
Review URL: https://codereview.chromium.org/152843003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249365 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MockGLInterface::GetGLProcAddress used to return the same mock function
for different versions of a GL function. This prevented any detailed
testing of the GL bindings in the GPU unit tests.
This patch changes the logic so that MockGLInterface::GetGLProcAddress
returns a different mock function for each different valid function name,
so that the function pointer can be checked to ensure that the bindings
were done correctly. However, the different mock versions of the same GL
function still redirect to the same MockGLInterface member function. This
preserves hiding the intricacies of the GL bindings from unit tests that
are not interested in them.
Initially, this is used to make sure that glInvalidateFramebuffer is
bound on GLES3, and glDiscardFramebufferEXT is bound on GLES2 when the
extension is present.
BUG=322489
TEST=gpu_unittests
Review URL: https://codereview.chromium.org/148763004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248959 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=338160
TEST=gpu_unittests on 10.9 bots
R=kbr@chromium.org
Review URL: https://codereview.chromium.org/141753015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248647 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gpu::Mailbox by itself can hold only a texture id, but in common usage it comes
with texture target and syncpoint information for cross-context sharing. To
reduce repetition of this pattern, gpu::MailboxHolder holds:
* a gpu::Mailbox
* a GL texture target
* a syncpoint index
Refactor other classes to use a gpu::MailboxHolder instead of separate
gpu::Mailbox and associated state.
Syncpoints are created with uint32 indices; make sure all uses of syncpoints
use the appropriate type.
BUG=None
TEST=local build, unittests on CrOS snow, desktop Linux
TBR=piman@chromium.org, enn@chromium.orge, cevans@chromium.org, scherkus@chromium.org
Review URL: https://codereview.chromium.org/132233041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248612 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently tests initialize GL by calling into methods that should be
internal to the gl bindings code. Instead, everyone should go through
GLSurface::InitializeOneOff.
Also GLSurface::InitializeOneOff early outs if it was already called,
leading to a pattern of initializing GL all over the place just in case
and not having a clear idea of where it should be set up. Instead, DCHECK
that it is not called more than once, and move calls to this method to
be during process startup for unit test suites instead of mid-test.
This adds two test variants of InitializeOneOff for tests to call, that
set up OSMesa or Mock GL bindings, via GLSurface::InitializeOneOff.
R=ben@chromium.org, piman@chromium.org, sievers@chromium.org, piman, sievers
BUG=270918
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247793
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=248049
Review URL: https://codereview.chromium.org/135213003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248557 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
R=kbr@chromium.org, piman@chromium.org, piman
BUG=270918
Review URL: https://codereview.chromium.org/151593002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248541 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=339911
TBR=zmo
Review URL: https://codereview.chromium.org/145023019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248284 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Caused content_gl_tests to start failing on all Mac Release GPU bots.
See Issue 339658 for details.
> Ensure GL initialization only happens once, and provide common init path
>
> Currently tests initialize GL by calling into methods that should be
> internal to the gl bindings code. Instead, everyone should go through
> GLSurface::InitializeOneOff.
>
> Also GLSurface::InitializeOneOff early outs if it was already called,
> leading to a pattern of initializing GL all over the place just in case
> and not having a clear idea of where it should be set up. Instead, DCHECK
> that it is not called more than once, and move calls to this method to
> be during process startup for unit test suites instead of mid-test.
>
> This adds two test variants of InitializeOneOff for tests to call, that
> set up OSMesa or Mock GL bindings, via GLSurface::InitializeOneOff.
>
> R=piman, sievers
> BUG=270918
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247793
>
> Review URL: https://codereview.chromium.org/135213003
TBR=danakj@chromium.org
BUG=270918,339658
Review URL: https://codereview.chromium.org/151003002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248093 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently tests initialize GL by calling into methods that should be
internal to the gl bindings code. Instead, everyone should go through
GLSurface::InitializeOneOff.
Also GLSurface::InitializeOneOff early outs if it was already called,
leading to a pattern of initializing GL all over the place just in case
and not having a clear idea of where it should be set up. Instead, DCHECK
that it is not called more than once, and move calls to this method to
be during process startup for unit test suites instead of mid-test.
This adds two test variants of InitializeOneOff for tests to call, that
set up OSMesa or Mock GL bindings, via GLSurface::InitializeOneOff.
R=piman, sievers
BUG=270918
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=247793
Review URL: https://codereview.chromium.org/135213003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248049 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Remove unnecessary dependency from gpu/ to libui.dll
>
> The command buffer uses ui/gfx/ types and ui/gl/ bindings, but those are
> separate components from ui/ui.gyp:ui. libui.dll pulls in a bunch of dependencies
> (like net/) that the command buffer doesn't need.
>
> R=piman
>
> Review URL: https://codereview.chromium.org/137203006
BUG=339518
TBR=jamesr@chromium.org
Review URL: https://codereview.chromium.org/131143006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247974 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The command buffer uses ui/gfx/ types and ui/gl/ bindings, but those are
separate components from ui/ui.gyp:ui. libui.dll pulls in a bunch of dependencies
(like net/) that the command buffer doesn't need.
R=piman
Review URL: https://codereview.chromium.org/137203006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247966 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TBR=oshima@chromium.org,stevenjb@chromium.org,bajones@chromium.org,rch@chromium.org
Review URL: https://codereview.chromium.org/149573004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247844 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
due to new static initializers in gl_bindings_autogen_gl.cc
> Ensure GL initialization only happens once, and provide common init path
>
> Currently tests initialize GL by calling into methods that should be
> internal to the gl bindings code. Instead, everyone should go through
> GLSurface::InitializeOneOff.
>
> Also GLSurface::InitializeOneOff early outs if it was already called,
> leading to a pattern of initializing GL all over the place just in case
> and not having a clear idea of where it should be set up. Instead, DCHECK
> that it is not called more than once, and move calls to this method to
> be during process startup for unit test suites instead of mid-test.
>
> This adds two test variants of InitializeOneOff for tests to call, that
> set up OSMesa or Mock GL bindings, via GLSurface::InitializeOneOff.
>
> R=piman, sievers
> BUG=270918
>
> Review URL: https://codereview.chromium.org/135213003
TBR=danakj@chromium.org
Review URL: https://codereview.chromium.org/149953003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247811 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently tests initialize GL by calling into methods that should be
internal to the gl bindings code. Instead, everyone should go through
GLSurface::InitializeOneOff.
Also GLSurface::InitializeOneOff early outs if it was already called,
leading to a pattern of initializing GL all over the place just in case
and not having a clear idea of where it should be set up. Instead, DCHECK
that it is not called more than once, and move calls to this method to
be during process startup for unit test suites instead of mid-test.
This adds two test variants of InitializeOneOff for tests to call, that
set up OSMesa or Mock GL bindings, via GLSurface::InitializeOneOff.
R=piman, sievers
BUG=270918
Review URL: https://codereview.chromium.org/135213003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247793 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This basically causes it to get updated from
glCopyTextureCHROMIUM() also which is used with
canvas/webgl.
BUG=309162
Review URL: https://codereview.chromium.org/148513004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247699 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
We are using the same validators as for glBindTexture(), so we need to filter this out manually.
(Using the texImage2D()/TextureTarget validator is not really better either, because it would not allow GL_TEXTURE_RECTANGLE_ARB.)
Review URL: https://codereview.chromium.org/141703013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247542 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
buffer was synchronously flushed; This is handy to track down why we're experiencing long command buffer flushes on Android sometimes with GPU rasterization
BUG=
Review URL: https://codereview.chromium.org/132243002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247514 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
GetLevelImage() does not handle GL_TEXTURE_CUBE_MAP.
TBR=reveman@chromium.org
Review URL: https://codereview.chromium.org/132333014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247382 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead add a simple GpuControl interface to attach a GLImage-wrapped
SurfaceTexture ref to a texture which will provide the
necessary hooks.
BUG=282700,309162
R=palmer@chromium.org, piman@chromium.org, reveman@chromium.org
Review URL: https://codereview.chromium.org/147463002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247334 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Presentation now only happens directly from the GPU process, so this code isn't used anymore.
BUG=325947
Review URL: https://codereview.chromium.org/140173004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247312 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the mock GL interface was split into two classes, GLInterface and MockGLInterface, and related functionality existed also outside these classes. Grouping the functionality under MockGLInterface and removing the ability to read the static GLInterface* from outside makes this part of the code more self-contained and easier to understand.
The comment explaining the role of MockGLInterface is also fixed: the interface is not the desktop GL interface, but rather an union of different GL interfaces.
Also clean up unused autogenerated egl/glx/osmesa/wgl headers. Only the gl interface header is currently being used for mocking.
The commit doesn't introduce functional changes, but only refactors existing functionality.
BUG=none
TEST=gpu_unittests
Review URL: https://codereview.chromium.org/132823009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247086 0039d316-1c4b-4281-b951-d872f2087c98
|