|
5804dc8e
|
2018-04-13T14:11:46
|
|
Refactor GL tests to use a shader library
Instead of having the same simple shaders repeated over and over in
the test code, reuse a single shader library.
BUG=angleproject:2474
TEST=angle_end2end_tests
Change-Id: I13f8ca8c0125e6d30f1761639bf8c3f69e0e77d2
Reviewed-on: https://chromium-review.googlesource.com/1012078
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
0ab41fa5
|
2018-03-14T11:03:30
|
|
Add an EGL extension to disable GL extensions by default.
BUG=angleproject:2404
Change-Id: I2667ddc92d5c9ef6e0ef115f2fdf0c3d3643d945
Reviewed-on: https://chromium-review.googlesource.com/962702
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
4ed05da2
|
2018-02-02T14:26:15
|
|
ES31: Add link validation on geometry shader itself
This patch intends to support program link validation on geometry
shader itself. A link error should occur when linking a program with
a geometry shader that lacks input primitive or output primitive or
the declaration of 'max_vertices'.
This patch also adds the support of linking a program with geometry
shader in angle_end2end_tests.
BUG=angleproject:1941
TEST=angle_end2end_tests
dEQP-GLES31.functional.shaders.linkage.es31.geometry.varying.rules.unspecified_*
Change-Id: I25fb08514753102f5dd3ab86211c05d2ca4fd185
Reviewed-on: https://chromium-review.googlesource.com/898842
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6108b766
|
2018-02-08T18:17:43
|
|
Remove angle::Library and its usages
No longer needed after https://chromium-review.googlesource.com/513519
Loading libGLESv2 interferes with API tracing tools
BUG=angleproject:1892,angleproject:2343
Change-Id: I2ccbc99377d75d107fd644301402c52466dded21
Reviewed-on: https://chromium-review.googlesource.com/910094
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
5dd4ad89
|
2018-01-29T13:53:43
|
|
Vulkan: Add a perf test for the Pipeline cache.
This micro-benchmark can be used to measure the performance impact
of changing the Pipeline cache. For instance, we can check if changing
the size of the hash key affects performance significantly.
Also updates the build files so angle_perftests can see vulkan.h, and
makes the Vulkan headers an explicit source set.
This test currently shows that a lot of time is spent in PMurmurHash,
with some time also spent in memcmp.
Bug: angleproject:2163
Change-Id: Ie8bb3e31d58590f373d28cbbb59f7e372b80cc29
Reviewed-on: https://chromium-review.googlesource.com/884882
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
f3e23295
|
2018-01-04T18:19:21
|
|
EGL: Expose NULL driver device selection.
This makes the device type selection part of the ANGLE platform
extension. We currently support NULL driver selection on all
available back-ends (although on the NULL back-end, it already
has no device type). Optionally we could expose certain features
of this as separate extensions.
This currently also supports the old hidden enum, until we can
update Chrome and consolidate to the new exposed official enum.
Bug: angleproject:2159
Change-Id: I85d0811098e644e8192c207673af9e18ed7c1da2
Reviewed-on: https://chromium-review.googlesource.com/846021
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
5b1180df
|
2017-10-10T20:26:52
|
|
Add gyp deprecation warning.
gyp_angle now prints a warning every time it is run.
All targets print the same warning as one of their build steps.
The DEPS change updates gypi_to_gn so it doesn't choke on
files with 'target_defaults' sections.
BUG=angleproject:1569
Change-Id: Ibdf277fcc14cf4ebc7b7db78270210752cd8ef9d
Reviewed-on: https://chromium-review.googlesource.com/711155
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
acf2f3ad
|
2017-11-21T19:22:44
|
|
Apply Chromium style fixes.
This addresses several minor code quality issues that are validated
in Chromium, but not yet applied to ANGLE:
* constructors and destructors must be defined out-of-line
* auto is not allowed for simple pointer types
* use override everywhere instead of virtual
* virtual functions must also be defined out-of-line
Slightly reduces binary size for me (~2k on Win, 150k on Linux).
Bug: angleproject:1569
Change-Id: I073ca3365188caf5f29fb28d9eb207903c1843e6
Reviewed-on: https://chromium-review.googlesource.com/779959
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1fce3283
|
2017-10-09T16:12:03
|
|
Samples: Add command line flag to select renderer.
This gives us the ability to test Vulkan without a special recompile,
and keeps the default setting to the default ANGLE renderer. Only
implemented for the hello_triangle sample currently.
Also includes an extra error message for missing EGL config, which is
where the Vulkan init fails right now, due to missing depth/stencil
support.
Also includes a hack to get Vulkan samples running without depth/
stencil.
BUG=angleproject:2167
Change-Id: I6925b9b84956fb69cbf602a828ea95d8c7125b68
Reviewed-on: https://chromium-review.googlesource.com/707688
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b433e872
|
2017-10-05T14:01:47
|
|
Change robust resource init into a context creation attribute.
Enabled support on OpenGL even through the extension is not fully
implemented so that testing with Chromium/Passthrough commmand decoder
is still possible.
BUG=angleproject:1635
Change-Id: Ia417b1779aace1eae19514325701a79cd33f4ef3
Reviewed-on: https://chromium-review.googlesource.com/678479
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
a20af6d7
|
2017-09-18T13:32:29
|
|
Use C++11 raw string literals instead of SHADER_SOURCE macro
This is better in many ways:
1. It doesn't confuse clang format
2. \n doesn't need to be included after preprocessor directives like
the version directive.
3. It's using built-in functionality instead of something custom.
Raw string literals should be the preferred way to include shader
source in C++ files going forward.
BUG=angleproject:2157
TEST=angle_end2end_tests
Change-Id: I8b236a6e2d5c25d920297e5bc5b5b143eddeba1f
Reviewed-on: https://chromium-review.googlesource.com/671046
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
8a7b3a0c
|
2017-08-25T16:05:48
|
|
Reland 'Remove IndexRange retrieving in validation'
This change adds GL_KHR_robust_buffer_access_behavior support.
The old change is in https://chromium-review.googlesource.com/c/angle/angle/+/607413
BUG=755897, angleproject:1393, angleproject:1463
Change-Id: I04a1132c3ae8d3a766194df61c4ff7bf0b084f03
Reviewed-on: https://chromium-review.googlesource.com/640750
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
401345e4
|
2017-08-21T10:52:40
|
|
D3D11: Move more state into StateManager11.
This moves the input layout cache and vertex and index data managers
and related info into the state manager. This makes it easier to
manage the state application with regards to dirty bits.
Also updates the dirty current value handling in StateManager11.
BUG=angleproject:1156
BUG=angleproject:2052
Change-Id: I8de968a1f8416363aa1c49d9e9da129942d21275
Reviewed-on: https://chromium-review.googlesource.com/616783
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5505bdc7
|
2017-07-26T14:39:27
|
|
Fix Win32Window::takeScreenshot.
Several parts of this function were incorrectly checking for errors or
passing the wrong parameters. If screenshotting fails, throw an exception
in dEQP so that it is converted to a test failure instead of hanging the
test.
BUG=angleproject:2075
Change-Id: I19b55b273d0d3f1b47c1dac6affca69de8db21e0
Reviewed-on: https://chromium-review.googlesource.com/587300
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
222c517f
|
2017-07-19T16:15:42
|
|
Control Debug layers in ANGLE_platform_angle.
Debug layers seem to be a universal thing among functional back-ends.
D3D, OpenGL and Vulkan all need some kind of controls for debugging,
so it seems to make sense to make this control part of the base
extension.
Default the extension to EGL_DONT_CARE, which allows the back-end to
have a lot of flexibility in terms of implementation.
Also enable the extension in the D3D11 and OpenGL back-ends, and set
the extension to enabled for angle_end2end_tests.
Remove EGLVulkanEXTTest since it no longer tests anything not tested
in the base ANGLETest class.
BUG=angleproject:2086
Change-Id: I52d8170effd1846b9afbe6e4052c699fe5cb0de8
Reviewed-on: https://chromium-review.googlesource.com/578369
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
293e114d
|
2017-07-11T13:51:05
|
|
Add tests for the cache control extension.
A first test verifies the validation of the extension, and a second
compiles a simple shader and checks the cache behaviour.
These tests don't currently run since the extension is disabled,
but they will start running as soon as we expose it.
BUG=angleproject:1897
Change-Id: Id4a76b83090712a267576069b711eeee29aa81dd
|
|
fe54834f
|
2017-06-19T11:13:24
|
|
Proliferate gl::Context.
This enables a few small things: it will enable making the platform
a property of the Display rather than a global. The same goes for the
global logging annotator. Also it ensures all back-end implementations
have access to the GL / EGL state when available.
Also introduces a smart pointer helper class to angleutils for objects
that prefer to be destroyed with a context (gl::Context/egl::Display)
parameter. We were using std::unique_ptr in a few places that would
not work well with these objects.
BUG=angleproject:1156
Change-Id: I59e288a3d6f766ff8a0f4b48ff3a1fbf7489daba
Reviewed-on: https://chromium-review.googlesource.com/529706
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
bd044ed8
|
2017-06-05T12:59:21
|
|
Defer shader compiles when possible.
When using the program binary memory cache inside ANGLE, this will
give a potential fast path. If the user doesn't query the shader
compile status or info log before calling LinkProgram, then we can
check the program cache before translating the program, and if it
finds a hit, we don't even need to call the translator.
To preserve the shader settings at compile time, a reference to the
current shader translator is kept in a binding pointer on the call
to compile. This mirrors a similar implementation in Chromium's
command buffer. Also the compile options and source are cached at
compile to preserve the correct shader state.
BUG=angleproject:1897
Change-Id: I3c046d7ac8c3b5c8cc169c4802ffe47f95537212
Reviewed-on: https://chromium-review.googlesource.com/517379
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
948bbe51
|
2017-06-01T13:10:42
|
|
Redesign robust resource init as a display extension.
Also correct the enum allocation to values that are available to ANGLE.
BUG=angleproject:1635
Change-Id: I443f5654aa6a5049b4a1ae4c253cd6473b4e446e
Reviewed-on: https://chromium-review.googlesource.com/520002
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
98de826c
|
2017-05-29T13:01:02
|
|
Platform: Fix initialization order in tests.
Because of the platform refactor in abf38572062b91 we broke the way
the tests override the D3D workarounds for the tiny depth/stencil bug.
This change passes a pointer to the platform directly in the EGL init
logic, which solves this issue. It also removes all decltype code in
the platform header which might fix the UBSAN problem we were seeing
previously.
Also change a present mode selection error into a warning in the Vk
back-end, since this was being triggered on AMD, but is safe.
BUG=angleproject:2042
Change-Id: Ibbd0c69ce11a840cf4b33c616f56020001e553aa
Reviewed-on: https://chromium-review.googlesource.com/513519
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6811a316
|
2017-05-24T16:50:06
|
|
Use GetPlatformDisplay instead of GetPlatformDisplayEXT.
This will allow us to use EGLAttrib and pass pointers as Display
init parameters if necessary.
BUG=angleproject:2042
Change-Id: Ib0f85d71bc9d3dff2db9453012f40303f3c3bd7c
Reviewed-on: https://chromium-review.googlesource.com/513518
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f81ce4a3
|
2017-04-24T10:49:17
|
|
Refactoring: replace NULL by nullptr for pointers (3rd CL).
This CL mainly handles passing/returning NULL to/from a function.
BUG=angleproject:2001
Change-Id: I34802f792e710e3d7ff697cbe4701dc1bf5ab009
Reviewed-on: https://chromium-review.googlesource.com/485060
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
151d5de6
|
2017-04-13T09:52:23
|
|
Enable MSAA for texture client buffers
Enhancement to the EGL_ANGLE_d3d_texture_client_buffer extension to
allow use of a shared D3D texture that can be multi-sampled.
BUG=angleproject:1917
Change-Id: Iaf59bbd575a5dfb29345f55b549bc4017bf2d7d0
Reviewed-on: https://chromium-review.googlesource.com/446907
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e08a1d36
|
2017-03-07T17:24:06
|
|
Plumb robust resource init extensions.
This also cleans up a few minor glitches in the extension texts,
and renames the EGL extension for consistency.
It incidentally fixes a bug in our EGL init where we were checking
the wrong client versions for KHR_create_context.
It also implements a new feature for tests which allow them to defer
Context creation until the test body. This allows tests to check for
EGL extension available before trying to create a context with certain
extensions.
BUG=angleproject:1635
Change-Id: I9311991332c357e36214082b16f2a4a57bfa8865
Reviewed-on: https://chromium-review.googlesource.com/450920
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
61f0db8e
|
2017-02-24T15:34:19
|
|
Fix GCC build
Change-Id: I30e6e8d82821ed86cc7f53a48b1b23fc0cbf060c
Reviewed-on: https://chromium-review.googlesource.com/446866
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
feb8c686
|
2017-02-13T16:07:35
|
|
Add extensions to disable client arrays.
Chrome doesn't allow any client data in its command buffer. Add an ANGLE
extension to request a context that disallows client data.
BUG=602737
Change-Id: If9d5144daea3c629a73562396000df59a671aad3
Reviewed-on: https://chromium-review.googlesource.com/441986
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5714a202
|
2016-12-13T14:08:44
|
|
D3D11: Add RGB10_A2 as a supported EGL pbuffer config format.
Update EGLWindow to select configs that exactly match the requested
config. Too many tests make assumptions about the default framebuffer's
format.
BUG=angleproject:1662
Change-Id: I4cf8aedf51013ca0f3f40f6bbd40f24a4a90561f
Reviewed-on: https://chromium-review.googlesource.com/419681
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
c5a2a172
|
2017-01-13T15:55:07
|
|
Add EGL_EXT_pixel_format_float support, enables float EGL surfaces.
Add floating point EGL configs for the D3D11 backend.
BUG=angleproject:1707
Change-Id: Ic84cd3a0d41e78cc39d0275d83e7695f55673ddf
Reviewed-on: https://chromium-review.googlesource.com/428294
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
cc6ac25e
|
2017-01-25T12:57:21
|
|
GLES: Expose OES_mapbuffer in GLES2 on GLES3.
This extension is mandatory for EXT_map_buffer_range support. We can
emulate it using GLES 3.0 core map functionality.
BUG=angleproject:1751
Change-Id: Idba09ce7276603d5556039f4a49aa0b87cae22aa
Reviewed-on: https://chromium-review.googlesource.com/431826
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
dcab56a1
|
2017-01-05T14:47:34
|
|
Move some file utils to common.
Since common is shared through all ANGLE code (libANGLE/tests/samples)
this is the most general place for these utils, and will give libANGLE
access to them. We'll need them to get the current executable dir for
loading the Vulkan layers.
This also means we'll need to fix the global static variable use when
we have the ability.
BUG=angleproject:1319
BUG=chromium:677841
Change-Id: I7af61920635135b28a2f02f4a8d019ee88c9dd28
Reviewed-on: https://chromium-review.googlesource.com/425440
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
80ab03c5
|
2017-01-03T11:03:23
|
|
Add angle_white_box_tests for libANGLE render tests.
angle_end2end_tests included tests that used both the entry points
from our shared libraries as well as calling libANGLE classes like
gl::Context directly. Split these into a new test executable.
This also removes the libANGLE code from all the end2end tests.
It's necessary to add static versions of libEGL and libGLESv2 so
that we call safely call methods in libANGLE an the entry points
from the same target.
BUG=angleproject:1660
Change-Id: I6d82021b9300231ddb5fee435e5d77728f8f1292
Reviewed-on: https://chromium-review.googlesource.com/419175
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
0448ec84
|
2016-12-23T13:41:47
|
|
Vulkan: Enable validation layers on request.
Also adds the build files for the Vulkan layers.
The layers are enabled by default for the tests.
BUG=angleproject:1319
Change-Id: I0b442b36312a1299a932922e1c4e39f00801de49
Reviewed-on: https://chromium-review.googlesource.com/367751
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a7d12dc7
|
2016-12-13T15:08:19
|
|
Store uniform block bindings in program binaries.
This affects all back-ends - we weren't saving this. Note that
bindings can only be set after program linking. The spec is fairly
clear in that any programs saved must be loadable and runnable under
the same set of state, which would include block bindings.
Also add validation for zero binary formats in GetProgramBinary.
Also add a workaround for AMD where the block bindings were not
applied properly after link, similarly to our original bug.
This CL also includes a few fixups for GLProgram (raii).
BUG=angleproject:1637
Change-Id: Iae068eb4e1e4c763aa9f9332c033e38708026c8f
Reviewed-on: https://chromium-review.googlesource.com/418393
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
922cbfcb
|
2016-11-25T16:23:18
|
|
common: Add a vector arithmetic helper classes
Change-Id: I2f96baedf10d346eaa150bab04f8f6ca3ba573b9
Reviewed-on: https://chromium-review.googlesource.com/414272
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
7f07caa9
|
2016-10-25T07:43:33
|
|
Rename the build/ directory.
GYP related files went in gypfiles/, and the gni went in gni/ this
changes frees up the build/ directory name for Chromium's build/
directory.
BUG=angleproject:1569
Change-Id: I76fe343d569239c2732ba87986fcf7debc21d417
Reviewed-on: https://chromium-review.googlesource.com/403029
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b526f541
|
2016-11-02T14:11:01
|
|
OSXWindow: ignore deprecated warnings
We can't fix them yet because our continuous testing doesn't compile
with the updated definitions yet.
BUG=angleproject:1598
Change-Id: I40bdeaa6bafbd03b5e3e6c16ac8485e3f488fe59
Reviewed-on: https://chromium-review.googlesource.com/406452
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1c2faacb
|
2016-10-25T11:11:34
|
|
OSXWindow: Suppress a flaky crash when running end2end tests
For some reason while running the end2end tests, when the application
gets an NSAppKitDefinedEventType with subtype
NSApplicationActivateEventType (and of course window = 0), a null
dereference happens. The crash seems timing dependent, since the root
cause was not found and this is test code, add an ugly suppression.
BUG=angleproject:1570
Change-Id: I3af2188ddae8ca3c0a4458e15a8af01e66215e3f
Reviewed-on: https://chromium-review.googlesource.com/403049
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
4c655248
|
2016-10-04T10:27:21
|
|
D3D11: Fix unreferenced XFB vars getting dropped.
Our for-loop logic was confused so that some unreferenced
transform feedback varyings might get dropped.
BUG=chromium:651493
Change-Id: Id283230da0a47fc647b2a3862da60be5538e439e
Reviewed-on: https://chromium-review.googlesource.com/391945
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f41a7151
|
2016-09-19T15:11:17
|
|
Add an extension to disable resource generation on bind.
BUG=angleproject:1518
Change-Id: I662f7b07da5c97831496f2617b0adadf9858bdc9
Reviewed-on: https://chromium-review.googlesource.com/386799
Reviewed-by: Antoine Labour <piman@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
c287ea6e
|
2016-09-16T14:46:51
|
|
Add WebGL validation extensions to ANGLE.
BUG=angleproject:1523
Change-Id: I6fecb5055ed8087665aeee34b3a066ea8f38d51b
Reviewed-on: https://chromium-review.googlesource.com/386281
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
adaeb85f
|
2016-09-14T10:54:24
|
|
Fix standalone tests failing to find angle_util.dylib on Mac
BUG=
Change-Id: I69bddf27c1b019f71382d69c03eba94a268d2025
Reviewed-on: https://chromium-review.googlesource.com/385497
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d08163d7
|
2016-09-01T13:56:24
|
|
Fix standalone build.
BUG=angleproject:1471
Change-Id: I52aadeb58f75d5b944421bd0cd4a5dddead3f6d1
Reviewed-on: https://chromium-review.googlesource.com/379916
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e3352f94
|
2016-08-12T20:40:14
|
|
Change angle_util to be a shared library
So that there will be one instance of static thread synchronization variables
in AndroidWindow.
Previously there was one instance in lib_angle_deqp_gles2_tests__library
and one in libangle_deqp_libgles2, resulting in AndroidWindow::initialize
waiting forever.
Also make the change in GYP build to fix standalone build,
and fix rpath issues on Mac.
BUG=angleproject:1471
TEST=end2end and deqp tests on standalone Win10 and end2end on GN Mac 10.11
Change-Id: I731578459400bb47d269df129aabed9b67b555e6
Reviewed-on: https://chromium-review.googlesource.com/376202
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
4c4c8e72
|
2016-08-04T12:25:34
|
|
Add compute program compilation and linking support
Compute shaders can be now compiled and linked to create programs.
Some tests are added to verify successful and unsuccessful compute
shader linking.
The patch also replaces std::array<int, 3> with a custom struct
WorkGroupSize.
BUG=angleproject:1442
TEST=angle_end2end_tests
TEST=angle_unittests
Change-Id: I4ab0ac05755d0167a6d2a798f8d7f1516cf54d84
Reviewed-on: https://chromium-review.googlesource.com/366740
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
55033e58
|
2016-08-25T17:32:12
|
|
Revert "Change angle_util to be a shared library"
This reverts commit 2f9b5e6f79cd576bd3b7110272d58f143801bf0f.
Change-Id: I90a7ba0596e79795c9549bc268eabff69c96d572
Reviewed-on: https://chromium-review.googlesource.com/376079
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2f9b5e6f
|
2016-08-12T20:40:14
|
|
Change angle_util to be a shared library
So that there will be one instance of static thread synchronization variables
in AndroidWindow.
Previously there was one instance in lib_angle_deqp_gles2_tests__library
and one in libangle_deqp_libgles2, resulting in AndroidWindow::initialize
waiting forever.
BUG=angleproject:1471
Change-Id: Ia529c91e34960eb352730c1bb89a91ce6336c8a0
Reviewed-on: https://chromium-review.googlesource.com/368983
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ca05a081
|
2016-08-12T14:46:30
|
|
Compile deqp_gles2 on Android
Add some missing functions,
modify preprocessor conditions and build files
to include some other missing functions when building for Android.
BUG=angleproject:1471
Change-Id: Iadc0a0b9fed2444b8bc9a894ee65c8b66ea7f3c9
Reviewed-on: https://chromium-review.googlesource.com/368982
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a6426d67
|
2016-06-03T00:18:38
|
|
Android GL backend and end2end tests
Just the bare minimum implementation for end2end tests to run.
BUG=angleproject:1362
TEST=angle_end2end_tests on Nexus 5X
Change-Id: I92293e0f8bdc2ffaa5d4661927750d7cb3d931e6
Reviewed-on: https://chromium-review.googlesource.com/349353
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
87ae8cdf
|
2016-05-19T17:59:55
|
|
Fix Linux standalone compilation.
simple_texture_2d, hello_triangle, stencil_operations, simple_texture_cubemap
fail to compile after https://chromium-review.googlesource.com/342050.
BUG=angleproject:1319
TEST=ninja -C out/Release all
Change-Id: Ib70008036f8688b737f3f40b5224437a7afdea19
Reviewed-on: https://chromium-review.googlesource.com/346121
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
776a75b4
|
2016-05-17T13:43:17
|
|
Make Platform errors trigger test failures.
This can be useful in the Vulkan back-end to make validation layer
errors cause test cases to fail.
BUG=angleproject:1319
Change-Id: I523f3c874e892a2646600e4c5c554319ed8d770c
Reviewed-on: https://chromium-review.googlesource.com/342050
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
538281f6
|
2016-04-13T23:36:55
|
|
Initial Chrome OS support.
Samples and end2end tests mostly work. Only one config, and no input.
BUG=angleproject:1297
Change-Id: I5b69babccc5b97e486d86e1721a0a1740ad80941
Reviewed-on: https://chromium-review.googlesource.com/319460
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
7d52be02
|
2016-03-24T14:40:58
|
|
Move -lrt where it belongs.
Only deqp uses librt so the dependency belongs there, not in util.gyp,
and the condition should be OS==linux, not use_x11.
This lets things work on Chrome OS.
BUG=angleproject:1297
Change-Id: If397da5463b9c2d5217eb3b20841fa5a44bf56a3
Reviewed-on: https://chromium-review.googlesource.com/334813
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
67946766
|
2016-03-08T15:43:55
|
|
Improve info log length checks
Extend the info log length checks to shader_utils used by tests, and
treat info log with length 1 as empty, since it can only include the
null terminator. At least the Intel GL driver may generate "\0" as
info log in some situations, for example when compiling a user-defined
function with 50000 parameters.
BUG=angleproject:1323
Change-Id: I00f2965539ec235cb949c80c2a9e1d063d32fa15
Reviewed-on: https://chromium-review.googlesource.com/331461
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
2a63b3f8
|
2016-02-08T12:29:08
|
|
Re-land "Implement EGL_experimental_present_path_angle"
- Re-land with clang fix.
This allows ANGLE to render directly onto a D3D swapchain in the correct
orientation when using the D3D11 renderer.
The trick is to add an extra uniform to each shader which takes either
the value +1.0 or -1.0. When rendering to a texture, ANGLE sets this
value to -1.0. When rendering to the default framebuffer, ANGLE sets
this value to +1.0. ANGLE multiplies vertex positions by this value in
the VS to invert rendering when appropriate. It also corrects other
state (e.g. viewport/scissor rect) and shader built-in values
(e.g. gl_FragCoord).
This saves a substantial amount of GPU time and lowers power
consumption. For example, the old method (where ANGLE renders all
content onto an offscreen texture, and then copies/inverts this onto the
swapchain at eglSwapBuffers() time) uses about 20% of the GPU each frame
on a Lumia 630.
Verification:
+ dEQP GL ES2 tests pass when "present path fast" is enabled
+ all ANGLE_end2end_tests pass when "present path fast" is enabled
BUG=angleproject:1219
Change-Id: I56b339897828753a616d7bae837a2f354dba9c63
Reviewed-on: https://chromium-review.googlesource.com/326730
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d1c46228
|
2016-02-08T14:51:18
|
|
Revert "Implement EGL_experimental_present_path_angle"
Compile failure on Clang/Win:
The reason for reverting is: FAILED: ninja -t msvc -e environment.x86 --
"..\..\third_party/llvm-build/Release+Asserts/bin/clang-cl" -m32 /nologo
/showIncludes /FC
@obj\third_party\angle\src\tests\egl_tests\angle_end2end_tests.EGLPresentPathD3D11Test.obj.rsp
/c ..\..\third_party\angle\src\tests\egl_tests\EGLPresentPathD3D11Test.cpp
/Foobj\third_party\angle\src\tests\egl_tests\angle_end2end_tests.EGLPresentPathD3D11Test.obj
/Fdobj\gpu\angle_end2end_tests.cc.pdb
In file included from
..\..\third_party\angle\src\tests\egl_tests\EGLPresentPathD3D11Test.cpp:7:
In file included from
..\..\third_party\angle\src\tests\test_utils/ANGLETest.h:13:
..\..\testing\gtest\include\gtest/gtest.h(1392,16) : error: comparison of
integers of different signs: 'const int' and 'const unsigned int'
[-Werror,-Wsign-compare]
if (expected == actual) {
~~~~~~~~ ^ ~~~~~~
..\..\testing\gtest\include\gtest/gtest.h(1422,12) : note: in instantiation of
function template specialization 'testing::internal::CmpHelperEQ<int, unsigned
int>' requested here
return CmpHelperEQ(expected_expression, actual_expression, expected,
^
..\..\third_party\angle\src\tests\egl_tests\EGLPresentPathD3D11Test.cpp(281,9) :
note: in instantiation of function template specialization
'testing::internal::EqHelper<false>::Compare<int, unsigned int>' requested here
ASSERT_EQ(mWindowWidth * 4, mappedSubresource.RowPitch);
^
..\..\testing\gtest\include\gtest/gtest.h(1960,32) : note: expanded from macro
'ASSERT_EQ'
# define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
..\..\testing\gtest\include\gtest/gtest.h(1943,67) : note: expanded from macro
'GTEST_ASSERT_EQ'
EqHelper<GTEST_IS_NULL_LITERAL_(expected)>::Compare, \
^
BUG=angleproject:1219
This reverts commit 6b3c1db5170450bbc4946d8f18ba0d8619da43a0.
Change-Id: Ia67ab82dd13295dc03235d57fa417c73f20a49e6
Reviewed-on: https://chromium-review.googlesource.com/326680
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6b3c1db5
|
2015-12-18T14:01:46
|
|
Implement EGL_experimental_present_path_angle
This allows ANGLE to render directly onto a D3D swapchain in the correct
orientation when using the D3D11 renderer.
The trick is to add an extra uniform to each shader which takes either
the value +1.0 or -1.0. When rendering to a texture, ANGLE sets this
value to -1.0. When rendering to the default framebuffer, ANGLE sets
this value to +1.0. ANGLE multiplies vertex positions by this value in
the VS to invert rendering when appropriate. It also corrects other
state (e.g. viewport/scissor rect) and shader built-in values
(e.g. gl_FragCoord).
This saves a substantial amount of GPU time and lowers power
consumption. For example, the old method (where ANGLE renders all
content onto an offscreen texture, and then copies/inverts this onto the
swapchain at eglSwapBuffers() time) uses about 20% of the GPU each frame
on a Lumia 630.
Verification:
+ dEQP GL ES2 tests pass when "present path fast" is enabled
+ all ANGLE_end2end_tests pass when "present path fast" is enabled
BUG=angleproject:1219
Change-Id: Ib6eeea46bafa6ebce4adada0ae9db3a433b8fc4c
Reviewed-on: https://chromium-review.googlesource.com/321360
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
5c896691
|
2016-01-26T14:29:20
|
|
X11Window: fix the behavior of setVisible
An obvious bug crept in setVisible where setVisible(true) twice would
end up hiding the window.
BUG=angleproject:1145
Change-Id: Iea8ca3de4ab8c05e6da66fb04c8d377824547b41
Reviewed-on: https://chromium-review.googlesource.com/324090
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
f83cbc65
|
2016-01-22T15:27:21
|
|
Use std::random functions for test and samples RNG.
These standard functions are much more powerful than the C random()
routines. Use them to improve the random utils, and use a class
to clean things up further.
This fixes a problem I was having using random_utils where I was
having trouble generating random 32 bit unsigned integers.
BUG=angleproject:1290
Change-Id: I5081764053d0667a4e323553b7dea531256aa778
Reviewed-on: https://chromium-review.googlesource.com/323440
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
60ec6ea7
|
2016-01-22T15:27:19
|
|
Implement dirty bits for Framebuffer.
The dirty bits set the stage for performance improvements in D3D, but
don't actually reduce any of the redundant work just yet.
BUG=angleproject:1260
Change-Id: Ib84e6a9b7aa40c37c41790f492361b22faaf4742
Reviewed-on: https://chromium-review.googlesource.com/318730
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
82e3f3de
|
2016-01-22T17:55:44
|
|
Cast display parm for eglGetPlatformDisplayEXT.
The native display parameter to eglGetPlatformDisplayEXT has type void*.
When building with -DUSE_OZONE the native display type is intptr_t so
a cast is needed.
BUG=angleproject:1297
Change-Id: I947f5f9016926b6e3d590a2e29b5ee1fc883384d
Reviewed-on: https://chromium-review.googlesource.com/323471
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Tested-by: Frank Henigman <fjhenigman@chromium.org>
|
|
7acd7354
|
2016-01-20T15:12:07
|
|
Revert "Revert "OSXWindow: fix window size and position computations""
This reverts commit 67d810449c661460770ba7812856cd3da30ad8d6.
Change-Id: I4fcaffeb161d22c1cea72fd764461b0c38024e01
Reviewed-on: https://chromium-review.googlesource.com/322214
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
67d81044
|
2016-01-19T10:28:30
|
|
Revert "OSXWindow: fix window size and position computations"
This reverts commit 34087533024da6a7253a57c83e23b8fa07ee66a8.
Change-Id: Ide87d79791aa37095127f048929e1b7a925259ab
Reviewed-on: https://chromium-review.googlesource.com/322391
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
34087533
|
2016-01-15T10:58:03
|
|
OSXWindow: fix window size and position computations
Also improve debug messages in window_test.
BUG=angleproject:1273
Change-Id: Ie47dc1d7ad3be5a55d2a199334bba606f2b45ad0
Reviewed-on: https://chromium-review.googlesource.com/322350
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
732703e6
|
2016-01-13T15:56:45
|
|
Don't duplicate calls to X11Window's setVisible.
Calling setVisible multiple times in a row can cause a hang while
X11Window waits for events that will never be generted.
Change-Id: I43af8d4c79c7010dae78aa38c9716ed5b7b02865
Reviewed-on: https://chromium-review.googlesource.com/322380
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
70d0f499
|
2015-12-10T17:45:46
|
|
Implement GL_KHR_debug.
BUG=angleproject:520
Change-Id: I9ced3e7ab1515feddf2ec103c26b2610a45b1784
Reviewed-on: https://chromium-review.googlesource.com/319830
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
66988745
|
2015-12-22T19:39:19
|
|
Revert "Implement GL_KHR_debug."
This reverts commit 6c521b7a70a53b1c9f7762e53e34b5a8146b0f7b.
Change-Id: I6ff981198e31f34d3e405edea6277ee75516d6ee
Reviewed-on: https://chromium-review.googlesource.com/319820
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6c521b7a
|
2015-12-10T17:45:46
|
|
Implement GL_KHR_debug.
BUG=angleproject:520
Change-Id: I78d14cc8c94f5cef58604220f0ca847473b25bf8
Reviewed-on: https://chromium-review.googlesource.com/317820
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
31aabdfb
|
2015-12-16T10:53:46
|
|
gyp: Always use pkg-config wrapper
Calling pkg-config directly doesn't work when building
with a sysroot image as it will looks for host libraries
rather than those within the sysroot.
BUG=chromium:569947
Change-Id: I6f3e63c1816cd9393110cb3060744a69a93c9a2e
Reviewed-on: https://chromium-review.googlesource.com/318771
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Sam Clegg <sbc@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
90c253a6
|
2015-12-15T15:14:08
|
|
Add an instancing perf test.
BUG=526217
BUG=angleproject:1164
Change-Id: Ia353a3b2fa0ab0e8b7fd15d72bb63e5ecb7833b1
Reviewed-on: https://chromium-review.googlesource.com/301469
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f33b58d0
|
2015-12-07T12:46:29
|
|
Win32Window: Implement Event::EVENT_MOUSE_ENTERED
BUG=angleproject:1000
Change-Id: I9b61564fa086318c3ffa9a6b85bb100c52cfad54
Reviewed-on: https://chromium-review.googlesource.com/316590
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
508a5b7d
|
2015-12-08T11:26:14
|
|
Windows: Write test name in debug log.
This helps isolate particular debug log messages to specific tests.
BUG=angleproject:667
Change-Id: I6be37d50cc41a13abbceb395e6e9b603bd44c7bd
Reviewed-on: https://chromium-review.googlesource.com/316611
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3d677ea6
|
2015-11-16T13:38:47
|
|
Implement EGL_ANGLE_x11_visual
Reland with a fixed tests on AMD.
This extension will be used by Chrome to advertise the visual it will
use for its windows. Having ANGLE use the same visual will bring
several benefits:
- A blit will be avoided, and the content of the window might be
rendered on the system framebuffer directly.
- There will be less latency when resizing windows which will make it
much less likely to see a black border when resizing.
BUG=522149
Change-Id: I66004b6ac45453330af7c4c810ddf2c26941be42
Reviewed-on: https://chromium-review.googlesource.com/314661
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
9fc3682c
|
2015-11-18T13:08:07
|
|
D3D: Rework varying packing code.
In D3D we pack varyings by making a register map, and using the
recommended GLSL ES algorithm to reserve register space. We use
this map to assign row and column slots to each varying and then
produce a semantic index value.
The existing scheme had a number of bugs, and was failing several
angle_end2end_tests. The new design cleans up the code somewhat
and uses a different counting scheme for the semantic indexes:
just sort the varyings in packing order and use a simple
incrementing semantic index per varying. In SM4+, the HLSL compiler
sorts and packs the varyings correctly itself, and in SM3, handle
the cases we don't support by returning an error instead of a D3D
compiler link error.
Also refactor how we store varying information for TF Feedback/
StreamOut. Only store the necessary D3D information, instead of
extra information like the name and type.
This fixes several tests in GLSLTest/*. This also will allow us to
fix interpolation qualifier packing and the structure packing in
HLSL, which seems to work differently than the rest of the varying
types.
BUG=angleproject:1202
TEST=bots,dEQP-GLES3.functional.transform_feedback.*
Change-Id: Ie5bfbb4f71d8bf97f39115fc46d2e61b131df639
Reviewed-on: https://chromium-review.googlesource.com/311241
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b0228e18
|
2015-10-14T16:05:03
|
|
OSXWindow fix a use after free of the WindowDelegate
This use after free was triggered when a window was made key and
destroyed, then another window was made key. dedResignKey was called on
the former's WindowDelegate which had already been freed, causing a
crash.
BUG=angleproject:891
Change-Id: If47e88419f9a407a6a77c5cd9853b7b4860dc698
Reviewed-on: https://chromium-review.googlesource.com/305817
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
8fc63104
|
2015-09-30T13:17:34
|
|
OSXWindow release the tracking area instead of deallocing it
The Mac AMD GPU FYI bots were crashing on end2end tests exit because the
NSView was trying to deallocated an NSTrackingArea that had been
previously deallocated.
BUG=angleproject:891
Change-Id: I933e437254cad65f18cb0518a401b8b8e9dc59a0
Reviewed-on: https://chromium-review.googlesource.com/303302
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
ad60e8ee
|
2015-09-22T12:40:31
|
|
Move more sample_util sources to util.
These sample utils can also be useful for writing perf tests.
BUG=angleproject:1164
Change-Id: I44b5d63b57bfce7a541442fd02cd729a1bab17f0
Reviewed-on: https://chromium-review.googlesource.com/301468
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
9f2fd2b4
|
2015-09-02T12:29:07
|
|
Add WinrtWindow.cpp and WinRT version of angle_util
Change-Id: If4ff4b966f5bd388d32c72a2d1bcf9cf29e6032d
Reviewed-on: https://chromium-review.googlesource.com/297308
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
27593e05
|
2015-09-15T08:19:09
|
|
Implement missing util/ functions on Mac
SetLowPriorityProcess's implementation can be shared between Mac and
Linux so even though it isn't using a Posix API, it lives in the posix
file.
CreateOSPixmap needed to be implemented but will never be used by dEQP
as our Mac EGL backend doesn't expose configs supporting pixmaps.
Reland with a Linux compilation fix (forgot to delete
SetLowPriorityProcess).
BUG=angleproject:891
Change-Id: If8145501e1787d08d82402a6baa60a5404cac6b1
Reviewed-on: https://chromium-review.googlesource.com/299773
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
83634d6b
|
2015-09-16T20:12:42
|
|
Revert "Implement missing util/ functions on Mac"
This reverts commit 959e197c84065267811b0a28e1d8e4aa5f98cf82.
BUG=
Change-Id: I71ea2894c74be8fda80a59c99bc53f4fcb7e9115
Reviewed-on: https://chromium-review.googlesource.com/299873
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
959e197c
|
2015-09-15T08:19:09
|
|
Implement missing util/ functions on Mac
SetLowPriorityProcess's implementation can be shared between Mac and
Linux so even though it isn't using a Posix API, it lives in the posix
file.
CreateOSPixmap needed to be implemented but will never be used by dEQP
as our Mac EGL backend doesn't expose configs supporting pixmaps.
BUG=angleproject:891
Change-Id: I7b53b44b3465045954ec8e5997f703525ece92d0
Reviewed-on: https://chromium-review.googlesource.com/299851
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
ee48376c
|
2015-09-15T13:12:07
|
|
Update to the latest versions of the GL and EGL headers.
Add GLES 3.1 and 3.2 headers.
Remove GLES 3.0 extension headers and entry point files.
Re-land fixes double define from different style defines in libGLESv2.gypi
and other projects.
Re-land fixes missing defines in angle_util project in gn.
Change-Id: I1952413cd4390e6f5450df809f8f5867bf6f49e2
Reviewed-on: https://chromium-review.googlesource.com/299771
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0393310f
|
2015-09-15T16:59:59
|
|
Revert "Update to the latest versions of the GL and EGL headers."
Issues with GN build.
This reverts commit 8284436798dd184afe61cbb586185cb68e503d6f.
Change-Id: I99d186019135bbbe250e95c9567854108d31c556
Reviewed-on: https://chromium-review.googlesource.com/299870
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2f29d78b
|
2015-09-14T12:15:53
|
|
Use SDKROOT in the paths to OSX framework to match Chromium
BUG=angleproject:891
Change-Id: I458a12bd6b4be3b262d76184c51bde1f2b803c67
Reviewed-on: https://chromium-review.googlesource.com/299730
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
f0ca9a0c
|
2015-09-14T11:53:10
|
|
Remove the usage of some c++11 library features
That were causing compilation error in Chromium Mac builds
BUG=angleproject:891
Change-Id: I45777451b300928e8c8d232a5b7ecffa7f1c3cbe
Reviewed-on: https://chromium-review.googlesource.com/299721
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
178e5974
|
2015-09-14T11:52:44
|
|
In Chromium Mac builds do not find cstdint, use stdint.h instead
BUG=angleproject:891
Change-Id: Idf2a89ad26955df3579bb2c1883137589f68f573
Reviewed-on: https://chromium-review.googlesource.com/299720
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
b3c6a992
|
2015-09-14T11:54:17
|
|
OSXWindow::setMousePosition add a workaround for OSX 10.6 SDK
-[NSWindow convertRectToScreen] was introduced in OSX 10.7, use
convertBaseToScreen instead for OSX 10.6
BUG=angleproject:891
Change-Id: I255a71d98bc9bf22735a7cb8b9ce1ea24061742f
Reviewed-on: https://chromium-review.googlesource.com/299722
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
82844367
|
2015-09-11T13:52:12
|
|
Update to the latest versions of the GL and EGL headers.
Add GLES 3.1 and 3.2 headers.
Remove GLES 3.0 extension headers and entry point files.
Re-land fixes double define from different style defines in libGLESv2.gypi and
other projects.
Change-Id: I6204dc767bd83b7aa7e4d6e2fa338b2ce7f304d8
Reviewed-on: https://chromium-review.googlesource.com/299401
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e12150fe
|
2015-09-11T20:06:27
|
|
Revert "Update to the latest versions of the GL and EGL headers."
Linux compile failures to do gyp defines.
This reverts commit 8bbeabc1795473f7b3141219be3970fea3b95a71.
Change-Id: Icb31dd817414b3a9ab36e88cedab9c725af26b6b
Reviewed-on: https://chromium-review.googlesource.com/299173
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
8bbeabc1
|
2015-09-11T13:52:12
|
|
Update to the latest versions of the GL and EGL headers.
Add GLES 3.1 and 3.2 headers.
Remove GLES 3.0 extension headers and entry point files.
Change-Id: Icaa444efa52f3b9d1497189da92bc364545a6e3a
Reviewed-on: https://chromium-review.googlesource.com/299172
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
7aef6020
|
2015-09-11T19:04:00
|
|
Revert "Update to the latest versions of the GL and EGL headers."
Broke the Clang compile.
In file included from ../../third_party/angle/include/GLSLANG/ShaderLang.h:28:
../../third_party/angle/include/KHR/khrplatform.h:282:30: error: no newline at end of file [-Werror,-Wnewline-eof]
#endif /* __khrplatform_h_ */
Several other similar errors.
BUG=None
This reverts commit aac2035d851fc92b159dc8e01cfd2ebb86e99e4a.
Change-Id: I407e7e65bb6a46d1d941c54cdf14a14758e22d96
Reviewed-on: https://chromium-review.googlesource.com/298834
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
aac2035d
|
2015-09-11T13:52:12
|
|
Update to the latest versions of the GL and EGL headers.
Add GLES 3.1 and 3.2 headers.
Remove GLES 3.0 extension headers and entry point files.
Change-Id: I8e9df6262dc1b2536a409c5791734e4a4d63b115
Reviewed-on: https://chromium-review.googlesource.com/299341
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
86f8dd7c
|
2015-08-12T12:37:48
|
|
Implement a minimal EGL -> CGL backend
This succesfully renders HelloTriangle and some samples but fails on a
lot of tests. In particular it doesn't handle resizing the window and
doesn't have depth or stencil buffers.
BUG=angleproject:891
Change-Id: I16356471b470f764acb38e8dd3589e9c0129829d
Reviewed-on: https://chromium-review.googlesource.com/290770
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
5ade8459
|
2015-09-02T11:00:30
|
|
Properly check for EGL_KHR_create_context before creating ES3 context.
Mark EGL_KHR_create_context as supported in the DisplayGLs.
BUG=angleproject:1149
Change-Id: I20671535680eb2c3b9c08205cee243b3aa5c5821
Reviewed-on: https://chromium-review.googlesource.com/297080
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
beb81589
|
2015-09-02T10:30:55
|
|
Make the end2end tests compile in the GN build.
BUG=angleproject:929
Change-Id: Ifc5ad03579c3e187721842f7585f3f06b69cbf45
Reviewed-on: https://chromium-review.googlesource.com/296682
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
ca03b35c
|
2015-09-02T12:38:13
|
|
Re-land "Compute packed varyings in ProgramD3D only."
Instead of storing varying information in the shader, use a temporary
set when linking a D3D program. This also means we won't have to
modify information in the Shader object when linking a D3D program.
This completes the refactoring for PackedVaryings.
Re-land with fix for missing init of PackedVarying::vertexOnly.
BUG=angleproject:1123
Change-Id: If110809c3817d88b0370ac575d739d7385b067d9
Reviewed-on: https://chromium-review.googlesource.com/296731
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c437046f
|
2015-09-01T17:27:40
|
|
Revert "Compute packed varyings in ProgramD3D only."
Likely the cause of Windows bot failures.
BUG=angleproject:1123
This reverts commit 532061bbfb160586a06f0e47b6bbb5350e735203.
Change-Id: Ia4f0161b97bfbf2adb4cafaa5fa5484f04fad245
Reviewed-on: https://chromium-review.googlesource.com/296710
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
532061bb
|
2015-08-31T15:16:45
|
|
Compute packed varyings in ProgramD3D only.
Instead of storing varying information in the shader, use a temporary
set when linking a D3D program. This also means we won't have to
modify information in the Shader object when linking a D3D program.
This completes the refactoring for PackedVaryings.
BUG=angleproject:1123
Change-Id: I241610e87f7d14f3e18b0d8bd84f1a3509c05dfd
Reviewed-on: https://chromium-review.googlesource.com/295193
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
254fceac
|
2015-08-25T15:11:07
|
|
Fix two leaks and a delete vs delete[] reported by ASAN
BUG=angleproject:1137
Change-Id: Ic654b79aa56ae0c0a24097b85ab48f5af53ca1f7
Reviewed-on: https://chromium-review.googlesource.com/295154
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
4d61f7ed
|
2015-08-12T10:56:50
|
|
Reland Fixed compiler warning C4267 'conversion from 'size_t' to 'type', possible loss of data'
Additional warnings found with more testing and added C4267 warning disable only for angle_libpng
BUG=angleproject:1120
Change-Id: Ic403dcff5a8018056fa51a8c408e64207f3362eb
Reviewed-on: https://chromium-review.googlesource.com/293028
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
8168b4bd
|
2015-08-07T16:02:10
|
|
Fixed compiler warning C4838 'conversion from size_t to LONG requires a narrowing conversion'.
BUG=angleproject:1119
Change-Id: I2c879193dc122e6c45d0462abc91f39f5d332506
Reviewed-on: https://chromium-review.googlesource.com/292156
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|