|
6ad306cb
|
2016-02-11T17:06:41
|
|
dEQP: search for the data directory relative to the exe path.
BUG=580045
Change-Id: I58bfa9ab6766eaae756b3c0f4d28f545e86d543b
Reviewed-on: https://chromium-review.googlesource.com/327306
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
6ee394a1
|
2016-02-18T13:30:09
|
|
Add initializer function to more texture formats
All GL RGB formats that ANGLE stores as RGBA formats under the covers
need to have their alpha channel set to 1. See GLES 3.0.4 table 3.24
for the relevant spec. In some cases, this is handled by the
dataInitializerFunction associated with the format. Previously, some
texture formats had the function set correctly, but not all.
Associating formats with the datainitializerFormat is now a
responsibility of the gen_texture_format_table.py script. The new
automation there makes sure that all GL RGB formats emulated with
RGBA formats get a data initializer function.
Tests are added in end2end_tests for most of the RGB formats.
BUG=angleproject:1318
TEST=angle_end2end_tests
Change-Id: Iad860357f33d87c625445ea6c58a53af47e0b547
Reviewed-on: https://chromium-review.googlesource.com/328253
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
b9ada71d
|
2016-02-17T11:45:58
|
|
Sync the D3D11 rasterizer state if pointDrawMode or multisample changes.
When drawing points, culling is disabled to make sure the generated point
sprites are not culled. Since there are no dirty bits for pointDrawMode or
multiSample, they were not being checked to ensure the rasterizer state was
correct.
BUG=586531
Change-Id: I8fe60dd8d5bbc79b1bce2c0aa62c40cee560fe24
Reviewed-on: https://chromium-review.googlesource.com/327862
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
bce743ab
|
2016-01-15T17:18:28
|
|
Use texture base level to implement textureSize on D3D11 HLSL
HLSL GetDimensions call doesn't take the texture base level into account,
so ANGLE needs to use the texture base level passed in uniforms to
emulate ESSL textureSize() which does take it into account.
After this change the relevant dEQP tests pass on NVIDIA, Intel is still
suffering from an issue where a wrong value is returned when the lod
is > 0 (tested on Intel HD Graphics 4600). AMD is also suffering from an
unknown issue.
BUG=angleproject:596
TEST=dEQP-GLES3.functional.shaders.texture_functions.texturesize.*
(all pass on NVIDIA now), angle_end2end_tests
Change-Id: I13e33d126008ecdf2b89461a3fb5040949cf19e2
Reviewed-on: https://chromium-review.googlesource.com/322123
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
89f2845c
|
2016-02-10T11:33:07
|
|
Context virtualization for D3D11 queries
Queries in D3D11 are now virtualized such that they work as expected with
multiple contexts. Timer queries now only time the operations that their
context is responsible for and the operations of other contexts are
ignored.
BUG=angleproject:657
Change-Id: I667de594bdb5831d126d5801c0e692ded4c88bf4
Reviewed-on: https://chromium-review.googlesource.com/327150
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Ian Ewell <ewell@google.com>
|
|
534bf87b
|
2016-02-09T11:33:29
|
|
Implemented instanced rendering for emulated point sprites
Non-instanced PointSprite emulation for lower feature levels is
implemented using D3D DrawIndexedInstanced and an instanced vertex
buffer containing a pointsprite quad.
GL instanced rendering using glDrawArraysInstanced and
glDrawElementsInstanced with pointsprite emulation is performed using
a for-loop. The loop iterates over each instance to render and adjusts
the buffer offsets accordingly. This is not performant and is only used
and required by this chosen pointsprite emulation method.
Indexed instanced (glDrawElementsInstanced), uses the same offset loop
because the vertex buffer containing the data to be rendered has already
been expanded using getEmulatedIndexedBuffer(). Expanding the buffer
makes the two rendering operations similar enough to share code.
BUG=angleproject:1279
TEST=angle_end2end_tests
Change-Id: If46cc9f158e29f5518c70ad630b3228f474a9f8b
Reviewed-on: https://chromium-review.googlesource.com/321407
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
cfd6b2b6
|
2016-02-08T12:50:38
|
|
D3D11: Add a test to cover a clear RTV driver bug.
See dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rgba8
This test uses ClearRenderTargetView to clear various FBO textures,
but it does not seem to work correctly on my Nvidia configuration.
It has been reported to Nvidia. It also seems to fail on Intel.
Current GPU: NVIDIA GeForce GTX 660
Current Driver: 10.18.13.5598 (9-13-2015)
Works on Desktop OpenGL back-end, also on AMD R5230
BUG=angleproject:1305
Change-Id: I4b53b7376faf71f234d05c90f4fb55462de23e36
Reviewed-on: https://chromium-review.googlesource.com/314304
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ee991799
|
2016-02-10T18:25:40
|
|
Fix texture swizzle cache initialization
Texture swizzle cache needs to be initialized so that the keys do not
represent a valid swizzle state before any swizzled textures have been
cached.
BUG=angleproject:1095
TEST=dEQP-GLES3.functional.texture.swizzle.* (all pass)
Change-Id: I66c10ed49134875d29b07852488a41a776e8fb67
Reviewed-on: https://chromium-review.googlesource.com/326971
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
536ebf4d
|
2016-02-09T13:20:12
|
|
Increase the timeout on Timer queries tests.
On Mac, the timer queries tests have flakiness as the tests may timeout
before the query result is available. The time to wait before throwing a
timeout error in the tests was therefore increased by a factor of 20.
BUG=585498
Change-Id: I55047ee7759e6d2dde69294df451202dfb498034
Reviewed-on: https://chromium-review.googlesource.com/327031
Commit-Queue: Ian Ewell <ewell@google.com>
Reviewed-by: Ian Ewell <ewell@google.com>
|
|
292f005f
|
2016-02-04T10:37:32
|
|
Fix context virtualization for timer queries
In the current implementation of query virtualization, queries are
paused/resumed during draw calls. Timer queries however are affected by
every OpenGL call, so virtualization and context switches for timer
queries must happen every time there is a context switch. Thus the logic
for context-switching queries was moved to a new function in the GL state
manager that is called everytime a makeCurrent call on the context is
made. Since queries may be made after a context is made current, the state
manager needs to keep track of any new queries that are started in a
context, so an additional delegate function was added to the state manager
that is called every time a glBeginQuery() call is made that adds the
query object to a set. All the queries in that set are paused when a
context switch is made and the queries in the new context are then loaded
and resumed.
BUG=angleproject:1307
Change-Id: I4e596d83739274cb2e14152a39e86e0e51b0f95c
Reviewed-on: https://chromium-review.googlesource.com/325811
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Ian Ewell <ewell@google.com>
|
|
a78d12c5
|
2016-02-08T14:02:52
|
|
Make the dEQP GTEST initialization failures red on swarming.
On swarming the dEQP GTEST initialization failures would show as green
because the FAIL GTEST macro was called outside of a test. Use exit(-1)
instead that shows up as red on the bots.
BUG=580045
Change-Id: Icf82a8593a11fe7e992778ffd8c682f6738c39a6
Reviewed-on: https://chromium-review.googlesource.com/326690
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3f16afd3
|
2016-02-05T10:20:59
|
|
Add in GN the data dependencies required by the dEQP tests.
BUG=580045
Change-Id: I3424568c6b200d6b6eb9921c6c09a3b3c974d710
Reviewed-on: https://chromium-review.googlesource.com/326320
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
39046169
|
2016-02-08T15:05:17
|
|
CollectVariables: Don't include block name in field name.
The spec mandates that the instance name of a block determines how the
active uniform name for this field is reported. However, our handling
of this was a bit bugged. We would include the proper prefix on the
compiler-side, but this mangled the hashing, and was also not strictly
needed. We now also expose the instance name, so we can determine the
proper prefix for variable linking on the GL-side of things. This also
is consistent with how we handle other spec issues, where the GL-side
handles the GL-API specific functionality.
This also allows us to fix name hashing of instanced uniform blocks,
which was previously broken because we would hash the full name of the
active uniform, instead of just the field.
BUG=angleproject:1306
Change-Id: I06ace6dbc3f75fdd8129677360dcc142aa89136e
Reviewed-on: https://chromium-review.googlesource.com/326681
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@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>
|
|
b0c14b79
|
2016-02-05T16:49:10
|
|
D3D11: Fix 3D ReadPixels with PBOs.
Pass the FBO attachment to the Buffer packing method so we can
retrieve the layer of the attachment when doing an asynchronous
readback. Also take advantage of the TextureHelper11 class to
remove some redundant code.
BUG=angleproject:1290
Change-Id: I26bb21a03e0ff7a42aab4eee75f3c3d12915f398
Reviewed-on: https://chromium-review.googlesource.com/324021
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
af344a1b
|
2016-02-05T14:51:00
|
|
Fail the dEQP tests early if the case list is not found.
BUG=580045
Change-Id: I917f62dca047ca163bfdbcc5437b2fc1d7a1e020
Reviewed-on: https://chromium-review.googlesource.com/326401
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
f04f6671
|
2016-02-03T10:50:16
|
|
Add support for timer queries in D3D11
Timer queries without context virtualization are now supported in the
Direct3D11 backend. Only the elapsed time portion of the GL extension is
supported though due to limitations of D3D11 preventing a reliable
implementation of the timestamp functionality. As a result of this, the
counter bits for the timestamp is set to 0 and any queries of the
timestamp will always return 0.
BUG=angleproject:657
Change-Id: I51ca1a1a6bd6bc13155cebeacdca414b764db168
Reviewed-on: https://chromium-review.googlesource.com/325780
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>
|
|
e3939b98
|
2015-12-01T15:36:51
|
|
D3D11: Transcode ETC1 to BC1.
Adds a new extension to allow transcode ETC formats to suitable BC formats.
This commit implements ETC1 to BC1. More formats will be supported soon.
BUG=angleproject:1285
Change-Id: Iacbfbc2248dfe1aebf24b92696249a9404e331cd
Reviewed-on: https://chromium-review.googlesource.com/316511
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
9c757b12
|
2016-02-01T14:09:06
|
|
D3D11: Fix ReadPixels with layer 3D attachments.
Non-zero layer attachments are FBO attachments of 3D textures bound
from a layer other than zero. These haven't ever worked AFAIK. Fix
them by retrieving the correct layer from the FBO attachment.
Note: 3D attachments are still broken with PBO ReadPixels. The fix
for those will come in a subsequent patch.
BUG=angleproject:1290
Change-Id: I5417e7374188dd320e1209d006723ce070f98561
Reviewed-on: https://chromium-review.googlesource.com/323472
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e2509a39
|
2016-02-01T14:09:05
|
|
D3D11: Fix basic ReadPixels from 3D attachments.
Use the TextureHelper class to abstractly handle 2D and 3d textures.
Also refactor the Image11 copy methods to be a bit cleaner and not
use the copy conversion path when unnecessary.
This patch does not yet fix layer attachments - the fix for that will
come up in a subsequent patch.
BUG=angleproject:1290
Change-Id: If8b7aa8848ca4260e0dde690e7a99e115a97fabb
Reviewed-on: https://chromium-review.googlesource.com/323442
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
53f59f4e
|
2016-01-28T17:36:55
|
|
Finish basic timer query support in GL backend
EXT_disjoint_timer_query is feature complete with the WebGL tests passing
with Chromium using ANGLE as a backend. There is some flakiness in the
timestamp query test on WebGL, but investigation revealed a bug on
Chromium's end and a fix is being made there. Since the extension is
feature complete, it is now enabled by default on OpenGL so that it can be
regression tested.
BUG=angleproject:1265
Change-Id: If018b7e3ae84aff7e40c73ff8e672a86689ae6c4
Reviewed-on: https://chromium-review.googlesource.com/324580
Tryjob-Request: Ian Ewell <ewell@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Ian Ewell <ewell@google.com>
|
|
ae786455
|
2016-02-01T16:23:34
|
|
Tell GN about the dependecy of dEQP tests on expectations
Without this, gn-built isolates do not include the test expectations
file in the isolate, causing the test suite to bail out at startup.
Also rename target_name to api_name as target_name is a special
variable name when inside a target definition.
BUG=580045
Change-Id: I20be39c7e50e24757a0828f9056613e171f0002f
Reviewed-on: https://chromium-review.googlesource.com/325040
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
9b4e8626
|
2015-12-22T15:53:22
|
|
Redesign samplers in shaders on D3D11
Translation of samplers to HLSL on D3D11 is changed as follows:
Instead of passing around HLSL sampler and HLSL texture references in
shaders, all references to ESSL samplers are converted to constant
indices within the shader body. Each ESSL sampler is identified by an
unique index. In the code generated to implement ESSL texture functions,
these indices are used to index arrays of HLSL samplers and HLSL
textures to get the sampler and texture to use.
HLSL textures and samplers are grouped into arrays by their types. Each
unique combination of a HLSL texture type + HLSL sampler type gets its
own array. To convert a unique sampler index to an index to one of these
arrays, a constant offset is applied. In the most common case of a 2D
texture and a regular (non-comparison) sampler, the index offset is
always zero and is omitted.
The end goal of this refactoring is to make adding extra metadata for
samplers easier. The unique sampler index can be used in follow-up
changes to index an array of metadata passed in uniforms, which can
contain such things as the base level of the texture.
This does not solve the issues with samplers in structs.
The interface from the point of view of libANGLE is still exactly the
same, the only thing that changes is how samplers are handled inside the
shader.
On feature level 9_3, the D3D compiler has a bug where it can report that
the maximum sampler index is exceeded when in fact it is not. This can
happen when an array of samplers is declared in the shader. Because of
this the new approach can't be used on D3D11 feature level 9_3, but it
will continue using the old approach instead.
BUG=angleproject:1261
TEST=angle_end2end_tests,
dEQP-GLES3.functional.shaders.texture_functions.* (no regressions)
dEQP-GLES3.functional.texture.units.* (no regressions)
Change-Id: I5fbb0c4280000202dc2795a628b56bd8194ef96f
Reviewed-on: https://chromium-review.googlesource.com/320571
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
|
|
5bf9ff4a
|
2016-02-01T11:13:03
|
|
Fix leak with binding Framebuffers directly.
Using BindFramebuffer(1) then GenFramebuffers would return 1.
This leads to a memory leak and was something that was obscuring
debugging a bug in my ReadPixels fix for ES3.
This also fixes a bug where running the texture tests along produces
some random failures.
BUG=angleproject:1290
BUG=angleproject:1299
Change-Id: If11e8c743d2ddde725b12749ac012f670cd290e1
Reviewed-on: https://chromium-review.googlesource.com/324820
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
07fd1aaa
|
2016-02-01T11:13:03
|
|
Updated a few new passing tests in dEQP-GLES3.
Unknown when these started passing, but they seem to be OK locally
and on the bot.
BUG=angleproject:1095
BUG=angleproject:1097
BUG=angleproject:1101
Change-Id: Icf6102792b356cd23bf39414f75e796fe7e81879
Reviewed-on: https://chromium-review.googlesource.com/324940
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bc69f3be
|
2016-01-29T09:48:08
|
|
Build GN dEQP iff "build_angle_deqp_tests==true"
BUG=580045
Change-Id: Id19f843e8a04d38938b6827a7a64970eb088bcc6
Reviewed-on: https://chromium-review.googlesource.com/324760
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3ffd78bc
|
2016-01-22T16:09:42
|
|
Add initial support for EXT_disjoint_timer_query.
Basic timer queries are supported and tested in the OpenGL backend
but are not enabled by default. A good portion of the existing query
code was also refactored for improved validation - specifically for
validating that the appropriate extensions are available.
BUG=angleproject:1265
Change-Id: Iebae994cd7a8d3ed3e9fc3776fe2f3d99caa9237
Reviewed-on: https://chromium-review.googlesource.com/323450
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Ian Ewell <ewell@google.com>
Tested-by: Ian Ewell <ewell@google.com>
|
|
3e1b4f80
|
2016-01-27T12:39:27
|
|
Refactor ReadPixelsTest.
Split the test into several categories based on what fixture types
they need.
BUG=angleproject:1290
Change-Id: Ia25a022d90a0571e03d86c8e38f6243189968149
Reviewed-on: https://chromium-review.googlesource.com/324020
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a15472a3
|
2015-08-11T11:48:03
|
|
Fix bugs with drawbuffer state.
* IsAttachmentEnabled was checking the wrong draw buffer state. Instead
of checking that drawbuffer[colorAttachment] is in use, it should have
been scanning for a drawbuffer state that points to colorAttachment.
* Allow for maxDrawBuffer != maxColorAttachments. Tested by the GL
backend on some systems that don't have the draw buffers extension.
Fixed by updating the helpers and adding a new getDrawBuffer helper.
BUG=angleproject:1121
Change-Id: Idd1b0a9ec4a3f944d332c708364408bf5d59e1fd
Reviewed-on: https://chromium-review.googlesource.com/292740
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0dfa807f
|
2016-01-22T15:27:21
|
|
Tests: Prettify output for EXPECT_PIXEL_EQ.
Previously our output would spam multiple lines by checking equality
for each color component. Instead, use a helper struct with a stream
operator to clean up the output. This makes it much more legible.
New output style:
Expected: (0, 255, 0, 255)
Actual: angle::MakeGLColor(255, 0, 127, 255)
Which is: (255, 0, 127, 255)
BUG=angleproject:1290
Change-Id: Ieea018ab6c149a20b5fd74d74c972118b63a4b5e
Reviewed-on: https://chromium-review.googlesource.com/323441
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
5103f4c0
|
2016-01-26T11:40:18
|
|
Supress AMD OpenGL failures in angle_end2end_tests.
BUG=angleproject:1291
Change-Id: I4fc8cc152bb5ef18fff78bf312a14691e9de0243
Reviewed-on: https://chromium-review.googlesource.com/324030
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
69accbd1
|
2016-01-25T16:22:32
|
|
Supress Mac OpenGL AMD angle_end2end_test failures.
BUG=angleproject:1291
Change-Id: I7fe6a6203c71c893dad97d6e9bc8272164d44f58
Reviewed-on: https://chromium-review.googlesource.com/323790
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
e0cc2a4a
|
2016-01-20T10:58:17
|
|
Enable all angle_end2end_tests targeting OpenGL and OpenGL ES backends.
Added failure supressions and filed bugs for failing tests.
BUG=angleproject:1145
BUG=angleproject:1289
BUG=angleproject:1291
BUG=angleproject:1292
BUG=angleproject:1293
BUG=angleproject:1296
Change-Id: Ida78ba855500fe8a6ce6154d43ee01520330e3b1
Reviewed-on: https://chromium-review.googlesource.com/322695
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@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>
|
|
924b7de2
|
2016-01-21T13:54:28
|
|
Always write to gl_Position when compiling shaders with
SH_GLSL_COMPATIBILITY_OUTPUT.
BUG=angleproject:1277
Change-Id: Ib820a46151637e8c61e94b966b970de46ccca6b9
Reviewed-on: https://chromium-review.googlesource.com/323160
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Ian Ewell <ewell@google.com>
|
|
d544cc9f
|
2016-01-11T15:26:42
|
|
Fail any ANGLE test if it outputs D3D11 SDK message in debug mode
Also:
- Disable some Feature Level 9_3 tests that trigger SDK messages
- Fix a debug object name issue. If you try to assign a debug name
to an object twice then you get an SDK warning message. This can
occur if you 'create' two objects (e.g. Rasterizer States) with
identical DESCs on the same device, since D3D11 can optimize
this and return the same object both times.
- Disable the message checks in Line Loops tests, since the tests
trigger incorrect D3D11 SDK messages on Win7 machines
BUG=angleproject:667;angleproject:1282
Change-Id: I7284fb3a11377afde24e0014e21dbcea80ebb126
Reviewed-on: https://chromium-review.googlesource.com/321393
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
fc7cf8e9
|
2016-01-20T15:57:46
|
|
Fixed validation errors in teximage3d and friends.
BUG=angleproject:1169
BUG=angleproject:1101
Change-Id: I3770335d04cafd652c2f3839afca3e4a854e6e76
Reviewed-on: https://chromium-review.googlesource.com/322381
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Ian Ewell <ewell@google.com>
|
|
dd46e643
|
2016-01-20T15:13:10
|
|
Suppress ProvokingVertexTest.FlatTriWithTransformFeedback on Mac AMD
BUG=
Change-Id: Ia6e7c67aaed40cca70be5522e0b9edff2610b63a
Reviewed-on: https://chromium-review.googlesource.com/322212
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
|
|
6fd7472f
|
2016-01-20T10:59:34
|
|
Disable dEQP in GN.
Change-Id: If2b3097f976a4433625b393c8562ea5d22c0c070
Reviewed-on: https://chromium-review.googlesource.com/322211
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a7416ff7
|
2016-01-18T12:22:55
|
|
Fix texture completeness check when base level > 0 is used
ANGLE would previously treat a texture as incomplete whenever its base
level was above 0. This was because the base level wasn't being taken
into account correctly when determining what size the image at a specific
mip level should be. Fix this by taking the base level into account when
determining the expected size.
BUG=angleproject:596
TEST=angle_end2end_tests
Change-Id: I4b05514aed2858797ea46cf3570c3c40e5efc508
Reviewed-on: https://chromium-review.googlesource.com/322132
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c8c99a0a
|
2016-01-14T16:47:22
|
|
Add a texture test with a mix of different sampler types
This test makes sure that even if sampler / texture registers get
grouped together based on type in the HLSL backend of the shader
translator, the D3D renderer still has the right register index
information for each ESSL sampler.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: Id09f96cfa903cd20c8e7229980fa363bb07b6045
Reviewed-on: https://chromium-review.googlesource.com/322200
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1a679900
|
2016-01-14T12:21:47
|
|
Test shadow sampler + 3D sampler in the same shader
Shadow samplers use a different sampler object type in D3D11 HLSL than
other ESSL samplers. They need to be able to coexist in the same shader.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I960f6a41c0237ed912b072527e14aebeca98cf7c
Reviewed-on: https://chromium-review.googlesource.com/322120
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
51f1c0f0
|
2016-01-13T16:16:24
|
|
Add a workaround for default framebuffer sometimes being SRGB
On some GL driver/window system combinations the default framebuffer may
do SRGB conversion, which affects the values written there by draw
operations and read by readPixels. This is known to happen at least on
some Intel systems. For this reason, use an FBO with a known format
instead in the texture end2end tests.
This enables turning on most TextureTest cases on the OpenGL backend.
Tested on Intel HD 4600.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I5a39bd1dadf15b7c52793a0f66d67e9f61618b83
Reviewed-on: https://chromium-review.googlesource.com/321612
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
19d48db1
|
2016-01-13T14:43:21
|
|
Fix incorrect delete function call in TextureTest
The test must call glDeleteBuffers to delete a buffer instead of
glDeleteTextures. This was one reason behind the texture tests failing
on the GL backend.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I67042f6948146f3c3fca9e01231b0c4935a6f08d
Reviewed-on: https://chromium-review.googlesource.com/321611
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5faa15bf
|
2016-01-11T13:32:48
|
|
Fix null sampler warning in TextureTest.TextureNPOT_GL_ALPHA_UBYTE
The test deliberately tries to render a scene using an invalid texture.
ANGLE rendered this correctly, but when it bound the dummy 1x1 black texture
that's used instead of invalid textures, it didn't bind a sampler state. This meant
that D3D had no pixel shader samplers bound, and outputted a debug warning.
Also, technically the test should have been setting GL_UNPACK_ALIGNMENT=1,
but that wasn't impacting the result of the test.
BUG=angleproject:1248
Change-Id: I871706d518077ea840a585ae0df8f9176e130cb1
Reviewed-on: https://chromium-review.googlesource.com/321391
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
2173db3d
|
2016-01-12T13:55:14
|
|
Add sampler array tests
This adds some coverage for samplers that is missing from dEQP.
The shaders in the added tests both have a sampler array with two
samplers. The test shaders sample both textures, add up the results,
and the tests then check that the results of the shaders are correct.
Only constant indexing is used to access the sampler arrays.
One test accesses the sampler array in the main function, another one
first passes the array as a parameter to a user-defined function.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I9a0100705ac0da4905d50da37c0149fdbdd24c42
Reviewed-on: https://chromium-review.googlesource.com/321623
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
4644a20b
|
2016-01-12T15:12:53
|
|
Add a test for sampler as a function parameter
This adds some coverage for samplers that's missing from dEQP.
The test shader passes a sampler to an user-defined function, samples
the texture there and sets the returned sample to gl_FragColor. The
test then checks that the shader result is correct.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I2cc511e591a4af01515c6fb38fd43c5f15337bcb
Reviewed-on: https://chromium-review.googlesource.com/321622
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
53a2da13
|
2016-01-11T15:43:32
|
|
Test drawing with a shader with two different sampler types
This adds some test coverage that's missing from dEQP.
The test uses two different samplers in a shader, a cube map sampler
and a 2D texture sampler, adds the sampling results together and checks
if the result is correct.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: If21e24c964fc208b5d1ccd446834dabf13194944
Reviewed-on: https://chromium-review.googlesource.com/321621
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
4a8329f2
|
2016-01-11T17:12:57
|
|
Refactoring: Split TextureTest to multiple classes
This removes the cube map setup and the draw scale parameter from the
tests that don't need them, and reuses the code for setting up the window
and the shader program for most of the texture tests. The tests are now
structured as follows:
TexCoordDrawTest: Test class that sets up a shader program for drawing
with texture coordinates. Vertex shader source can be overridden in
subclasses, and fragment shader source must be specified in subclasses.
Texture2DTest: Inherits TexCoordDrawTest, sets up a 2D texture and a
shader for drawing from it.
Texture2DTestWithDrawScale: Inherits Texture2DTest, adding a scale
parameter that scales the quad that gets drawn.
TextureCubeTest: Inherits TexCoordDrawTest, sets up a cube map and a 2D
texture and a shader for drawing from them.
Texture2DArrayTestES3: Inherits TexCoordDrawTest. Reserves a texture ID
and sets up an ESSL3 shader for drawing from a 2D texture array.
Also add a few comments about where things being tested are specified.
Also, ANGLETest::drawQuad parameter names are renamed to make their
meaning clearer. The parameters affect the vertex shader attribute
values, which the shader may use for other things besides setting the
vertex position.
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: Id673e36d5883aaaf47f2f830c2a1ad0ca293d578
Reviewed-on: https://chromium-review.googlesource.com/321620
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
1fae3556
|
2016-01-07T14:33:48
|
|
Add dEQP Linux GN integration.
BUG=angleproject:1272
Change-Id: I20cb8968221c25bb374b3cc71d7ca619a35f1a2f
Reviewed-on: https://chromium-review.googlesource.com/320781
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5f80d016
|
2016-01-11T11:16:01
|
|
Disallow invariant(all) pragma in ESSL 3.00 fragment shaders
ESSL 3.00.4 section 4.6.1 says that using #pragma STDGL invariant(all)
in a fragment shader is an error, so make it an error. This spec
language is not found in ESSL 1.00, and it's been removed in ESSL 3.10.
BUG=angleproject:1276
TEST=angle_unittests
Change-Id: I2022f35475f867304b55dfb142f8568f6df28830
Reviewed-on: https://chromium-review.googlesource.com/321240
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
edbc2449
|
2016-01-04T11:25:00
|
|
Add dEQP GN integration.
This is Windows-only for now, but will be expanded to Linux. Also do
a bit of refactoring in our deqp.gypi file.
BUG=angleproject:1272
Change-Id: I526a99fe3b91a2d9e8901c7e033a4916a06780be
Reviewed-on: https://chromium-review.googlesource.com/320800
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
ff318af1
|
2015-12-22T15:34:45
|
|
Fix BlendMinMaxTest.RGBA16F on D3D11 Feature Level 9_3
This test checks for OES_texture_half_float, but it's trying to use a
16F texture as a color buffer so it should be checking for
EXT_color_buffer_half_float.
Since EXT_color_buffer_half_float requires more format support (e.g.
R16F, RG16F, RGB16F) than OES_texture_half_float, it's possible for an
implementation to support one extension and not the other. D3D11 Feature
Level 9_3 does this.
Change-Id: I40fb38aa3f419be2606464bd0476cd064afe90fa
Reviewed-on: https://chromium-review.googlesource.com/319642
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
539146e1
|
2016-01-06T19:34:18
|
|
Add rpath for GN build of angle_end2end_tests.
This fixes the static library build of this target on Linux.
BUG=angleproject:1270
Change-Id: Id65bd9b7136918829f385920b540a4df83650c6f
Reviewed-on: https://chromium-review.googlesource.com/320615
Tested-by: Kenneth Russell <kbr@chromium.org>
Tryjob-Request: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8d8b108a
|
2016-01-04T16:44:57
|
|
Disallow local function prototypes
Function prototypes should not be allowed inside other functions
according to ESSL 3.00.4 section 4.2.4.
BUG=angleproject:1068
TEST=angle_unittests,
dEQP-GLES*.functional.shaders.functions.invalid.local_function_proto*
Change-Id: I54160da4d49b92a6cd7cbee020e67733963d4e10
Reviewed-on: https://chromium-review.googlesource.com/320091
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
5d653186
|
2016-01-04T14:43:28
|
|
Disallow multiple function prototypes in ESSL 1.00
The same function can't be declared twice in ESSL 1.00. In ESSL 3.00 this
is allowed.
A function prototype following the definition of that function is not
interpreted as redeclaration, and the shader compiler continues to allow
this.
BUG=angleproject:1067
TEST=angle_unittests,
dEQP-GLES2.functional.shaders.functions.invalid.double_declare*
Change-Id: I6d2ddafd456d378d92839600f19069ad1cd19aff
Reviewed-on: https://chromium-review.googlesource.com/320082
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e1743f37
|
2016-01-06T05:24:22
|
|
Clang warning fixes
This fixes member initialization order and unused private member
warnings that broke the Clang build after the last Angle roll.
BUG=82385
Change-Id: If866f352bda6d66093c180fdbec6c16bf902b628
Reviewed-on: https://chromium-review.googlesource.com/320466
Reviewed-by: Nico Weber <thakis@chromium.org>
Tryjob-Request: Nico Weber <thakis@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
7ee40d1a
|
2016-01-04T08:37:00
|
|
Fix compilation failures on OSX standalone builds
BUG=
Change-Id: Ifd40ae30d601227caf550546fcffc286cf533a73
Reviewed-on: https://chromium-review.googlesource.com/320290
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0d53c400
|
2016-01-05T03:30:51
|
|
Revert "Ignore clang -Wall warning."
This was not working as intended. The correct fix was implemented in
444922662a59a45ad8f86ec9480b180571337f4e
This reverts commit 74b92323c9a210178ab97cc9418d6bf639cb9d8c.
Change-Id: Ib2bc3861bcdb49555b59981ca95f1c1c1e924d7d
Reviewed-on: https://chromium-review.googlesource.com/320480
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
465b3a5f
|
2015-12-15T12:08:24
|
|
Add texture sampling perf test
The test generates a texture containing random data and then blurs it in
a fragment shader using nearest neighbor sampling. The test is
specifically designed to test overhead of GLSL's builtin texture*()
functions that may result from how ANGLE translates them on each backend.
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I188fa8c07e609b7f371e587358f913b506bd7d44
Reviewed-on: https://chromium-review.googlesource.com/319382
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
44492266
|
2016-01-04T13:04:08
|
|
Disable virtual destructor warning in dEQP.
This small error in dEQP triggers a warning that was recently
enabled in Chromium builds. We should remove the suppression once
we fix dEQP.
BUG=angleproject:1271
Change-Id: I9df3a304043b6decc00440103d105c9de76dc2db
Reviewed-on: https://chromium-review.googlesource.com/320320
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
66641c61
|
2016-01-04T15:31:15
|
|
Fix typo in shader test
The only error in the test should be the non-integer index. gl_FragColor
should be used correctly.
BUG=angleproject:1254
TEST=angle_unittests
Change-Id: I0b7a36be5485661cc03bf2c476aaacae5d3b6e76
Reviewed-on: https://chromium-review.googlesource.com/320280
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@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>
|
|
74b92323
|
2016-01-02T09:58:25
|
|
Ignore clang -Wall warning.
Change-Id: I76e3cd5038457a7d978497ef9a5ebee60b05e34d
|
|
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>
|
|
8047f065
|
2015-12-15T17:54:42
|
|
Improve perf testing framework
The ANGLERenderTest subclasses have a parameter "iterations". Previously
most of these tests would perform iterations^2 iterations, since the
looping was done both in ANGLERenderTest and in the individual test
classes. Do the looping only in the individual test classes instead.
This enables getting rid of separate beginDrawBenchmark() and
endDrawBenchmark() functions.
Some other unused code is also removed:
1. stepBenchmark function
2. unused parameters to step()
This makes the core loop of running tests simpler.
The perf testing framework also now has shared logic for deciding when
to end a given test.
The score calculation for tests is also changed. Instead of reporting
just the number of operations done, it is reported relative to the actual
run time of the test. This should make the test results more accurate,
since run time of the tests may have some variation. It also enables
changing the run time of the tests without rebaselining them.
In the tests that use GPU, GPU operations are also waited to finish
before stopping the timer.
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I69e9aad8afd2d9dedd60e144f0a5d4203618feef
Reviewed-on: https://chromium-review.googlesource.com/319381
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
add0ef14
|
2015-12-17T15:43:31
|
|
Remove deprecated ShShaderOutput versions.
These aren't referenced from Chromium code any more.
BUG=chromium:550487
Change-Id: Ie4094667ec5f739efd9f1253ffdb779deaf3cebc
Reviewed-on: https://chromium-review.googlesource.com/319162
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Kenneth Russell <kbr@chromium.org>
|
|
fecbed9f
|
2015-12-17T12:01:12
|
|
Fix code style in perf tests
1) Format switch/case with git cl format
2) Change NULL -> nullptr
3) Change int to GLint where appropriate
4) Use more appropriate variants of asserts
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I97d6260dbd72ef3897fff145682b7043bf323b76
Reviewed-on: https://chromium-review.googlesource.com/319380
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@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>
|
|
cd089732
|
2015-12-17T09:53:09
|
|
Re-land "Implement GL_EXT_color_buffer_half_float."
This exposes previously enabled functionality. Also update the format
support check to be:
supported: GLES3 || texture extension
renderable: supported && color buffer extension
filterable: filtering extension
(Note: we silently support float rendering in ES2)
Re-land with suppression for newly exposed failing test.
BUG=angleproject:445
Change-Id: I4e46699e6b0c2ec8a7d8b36f1f598af1ec6420bc
Reviewed-on: https://chromium-review.googlesource.com/318931
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0a90f527
|
2015-12-17T14:51:56
|
|
Revert "Implement GL_EXT_color_buffer_half_float."
Failing dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rgb16f
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20dEQP%20%28NVIDIA%29/builds/4651
Likely missing a suppression for this test. It likely passed
only because the extension was missing and it was passing as
not supported.
BUG=angleproject:1229
This reverts commit 39f9251daef5c4ddb4b7c413466a092f4a7f21bf.
Change-Id: Ia703378d5aaacafc14503aff0b52a795b7eb4467
Reviewed-on: https://chromium-review.googlesource.com/319080
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
39f9251d
|
2015-12-14T15:34:09
|
|
Implement GL_EXT_color_buffer_half_float.
This exposes previously enabled functionality. Also update the format
support check to be:
supported: GLES3 || texture extension
renderable: supported && color buffer extension
filterable: filtering extension
(Note: we silently support float rendering in ES2)
BUG=angleproject:1229
Change-Id: Icf0775891d6e336acd1a0ac07c3b37cf6bb0f101
Reviewed-on: https://chromium-review.googlesource.com/308430
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@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>
|
|
3215b207
|
2015-12-15T16:41:39
|
|
Validation cube completeness for FBO attachments.
ES3 adds a clause that cube map FBO attachments must be cube complete
to produce complete framebuffers. ES2 doesn't have this clause, but
some (if not all, unverified) OpenGL back-ends don't support these
incomplete cube map attachments.
BUG=angleproject:1259
Change-Id: Idd4564488375b8646dde712e6ce4a158c23020ee
Reviewed-on: https://chromium-review.googlesource.com/318264
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
cb34ea5e
|
2015-12-11T16:01:18
|
|
Re-land "Finish ReadBuffer support in end2end_tests."
Currently we had a few TODOs concerned about unimplemented calls in
ANGLE. ANGLE now has support for ReadBuffer, so uncomment the calls.
Re-land with end2end_tests fix.
BUG=angleproject:940
Change-Id: I6e00c3aac6307308fb7f00c7e0426812563ed778
Reviewed-on: https://chromium-review.googlesource.com/317821
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
8e89866d
|
2015-12-11T12:24:21
|
|
Remove redundant index integer check from ValidateLimitations
Non-integer indices are already rejected in the parser, so the
ValidateLimitations pass doesn't need to check for them.
ESSL 1.00 spec is not actually terribly clear about whether the
parser should do this check, but the language grammar in the spec only
has indexing with "integer_expression" so it seems like ANGLE's
interpretation of only allowing indexing with integers is correct.
ESSL 3.00 makes this restriction explicitly clear in section 5.7.
BUG=angleproject:1254
TEST=angle_unittests
Change-Id: I02b2a6f4d9fa7801a98df63ed21bc990e1585eb8
Reviewed-on: https://chromium-review.googlesource.com/317741
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
8a76dcc7
|
2015-12-10T20:25:12
|
|
Don't try to apply ForLoopUnroll to loops it can't handle
ForLoopUnroll should only mark loops that fit the limitations in ESSL
1.00 Appendix A.
BUG=angleproject:1253
TEST=angle_unittests, WebGL conformance tests
Change-Id: I00b0a7d29cd42efea9611d020aa1f873ac04773f
Reviewed-on: https://chromium-review.googlesource.com/317551
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
5807a536
|
2015-12-03T13:01:22
|
|
Fix buffer unbinding upon deletion.
- Remove buffer bindings for new ES3 buffer types.
- Fix detachment behavior to GLES3 spec,
i.e. detach only from currently bound containers.
- Make pack/unpack buffer binding parameter available in GLES3.
- Update test expectations.
BUG=angleproject:1191
Change-Id: Iab4c1de8d96a523d5af55d22956d50c10f7c93c2
Reviewed-on: https://chromium-review.googlesource.com/315521
Tryjob-Request: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
d561057f
|
2015-12-10T19:42:09
|
|
Fix ValidateLimitations for folded non-constant expressions
ANGLE recently gained the ability to constant fold some expressions that
are not constant expressions. ValidateLimitations should continue to
recognize all cases where an expression is not a constant expression.
BUG=angleproject:851
TEST=angle_unittests
Change-Id: I8ad0552a59213cdd6af9a220ffd672be9752271d
Reviewed-on: https://chromium-review.googlesource.com/317281
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
b0f0b81d
|
2015-11-21T17:49:29
|
|
Don't skip delete_bound.transform_feedback.
A one-line subset of 36167ab3 allowed
dEQP-GLES3.functional.lifetime.delete_bound.transform_feedback to pass,
though it indented that line differently than its neighbors.
Fix up the indentation and don't skip the test.
BUG=angleproject:1150
TEST=angle_deqp_gtest_gles3_tests --gtest_filter='*transform_feedback*'
Change-Id: I8471bd46f8a642b0945b43ab9b980c11c50d63c0
Reviewed-on: https://chromium-review.googlesource.com/313860
Tryjob-Request: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Frank Henigman <fjhenigman@chromium.org>
|
|
31c9d16e
|
2015-12-08T10:51:25
|
|
Re-land "Disable RTTI in VS release builds"
- Re-land with fix for Chromium Debug Windows builds
Chrome forbids RTTI, but standalone ANGLE currently allows it.
Disallowing RTTI in standalone release builds brings ANGLE and Chrome
closer, and prevents accidental use of dynamic_cast in ANGLE.
It also reduces binary size. Win10 libGLESv2 (x86) is 47KB smaller after this.
BUG=angleproject:1239
Change-Id: I505fd0d72868a38444e47198a9bf85ee3e25719f
Reviewed-on: https://chromium-review.googlesource.com/316830
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
08bf81d5
|
2015-12-09T16:23:32
|
|
clang/win: Let EGLDeviceTest.cpp build with -Wextra on trunk too.
Like https://chromium-review.googlesource.com/317360, but for
code that's in ANGLE trunk but not yet rolled in by Chromium.
BUG=567877
Change-Id: I59b1568b134f57919eb333e99e7d185416d5d3b5
Reviewed-on: https://chromium-review.googlesource.com/317390
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
d3754d82
|
2015-12-09T22:45:44
|
|
Revert "Finish ReadBuffer support in end2end_tests."
Fails on the bots, on ReadPixelsTest.DrawWithPBO/ES3_D3D11
BUG=angleproject:940
This reverts commit ada5d07ec6c3578eb07adbb647360c0ae60edf46.
Change-Id: I60c71af6317f6b5ee1bf1555cb4573c5e82a11d6
Reviewed-on: https://chromium-review.googlesource.com/317430
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0c93b8a0
|
2015-12-09T15:31:40
|
|
clang/win: Let EGLDeviceTest.cpp build with -Wextra.
In a Chromium build, this target is built as part of gpu, with the
chromium_code warning settings applied. Make sure it builds in that
config.
BUG=567877
Change-Id: I7464538a259295d83d990853b06b9ba76b82889d
Reviewed-on: https://chromium-review.googlesource.com/317360
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
ada5d07e
|
2015-12-08T15:40:52
|
|
Finish ReadBuffer support in end2end_tests.
Currently we had a few TODOs concerned about unimplemented calls in
ANGLE. ANGLE now has support for ReadBuffer, so uncomment the calls.
BUG=angleproject:940
Change-Id: Ib297e3ab7f2fa2424ee2cc85918331066dae4475
Reviewed-on: https://chromium-review.googlesource.com/317340
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
1e928bc0
|
2015-12-09T13:17:39
|
|
dEQP/Win: Skip trig tests that crash on new compiler.
The new version of D3DCompile_47.dll that gets bundled with the
Chromium depot_tools Windows SDK seems to crash when compiling these
shaders, I think during the optimization step.
BUG=angleproject:1252
BUG=568170
Change-Id: Ic54a6353ffe3520ecc5e5012721c0a09eb370b22
Reviewed-on: https://chromium-review.googlesource.com/317331
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6163c759
|
2015-12-07T16:32:59
|
|
ES3: Allow floating point blit conversions under extension.
If we support EXT_color_buffer_float, we should also allow blits to
and from float and fixed point data, according to the extension
spec.
BUG=angleproject:1243
TEST=dEQP-GLES3.functional.fbo.blit.*
Change-Id: I0957ac0647c94e38ebd67480c608eeb16c82dbf4
Reviewed-on: https://chromium-review.googlesource.com/316030
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c5629759
|
2015-12-07T16:29:04
|
|
Implement full program binary support for ES3.
Refactor validation to be used in both the OES and ES3 entry points.
BUG=angleproject:600
BUG=angleproject:1101
Change-Id: I2008c4ea04ce07910f03ae0b997f8a77b66203d8
Reviewed-on: https://chromium-review.googlesource.com/316620
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
36167ab3
|
2015-12-07T10:27:14
|
|
Don't allocate VertexArray or TransformFeedback objects until binding.
Follow the spec more closely and only reserve IDs of vertex arrays and
transform feedback objects before binding. This saves memory and allows
the glIs* calls to succeed.
BUG=angleproject:1218
BUG=angleproject:1101
Change-Id: I0039680c39c66c1c5506f6a1a9121a71791b77e9
Reviewed-on: https://chromium-review.googlesource.com/316591
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
50b3fe89
|
2015-12-08T14:49:12
|
|
Revert "Don't allocate VertexArray or TransformFeedback objects until binding."
This reverts commit 070c0124be642383220ca44f795225b89d56f13b.
Change-Id: I4ffa528f63311615bb4e22593c6e8a0ec424cd2d
Reviewed-on: https://chromium-review.googlesource.com/316780
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6c9b2ae9
|
2015-12-08T13:43:11
|
|
Revert "D3D11: Use clamp wrap mode for Integer textures."
dEQP-GLES3 texture failures:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20dEQP%20%28NVIDIA%29/builds/4510/steps/angle_deqp_gles3_tests/logs/stdio
dEQP-GLES3.functional.shaders.texture_functions.texture.isampler*
dEQP-GLES3.functional.shaders.texture_functions.texture.usampler*
BUG=angleproject:1244
This reverts commit 7a6a1ffeb275a8b565701305c8b42857ff2bf0b0.
Change-Id: I0e25e7aed0e0d78015d5b8f5a7b9a81e0a5fca4e
Reviewed-on: https://chromium-review.googlesource.com/316641
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
61fea139
|
2015-12-07T14:20:02
|
|
Protect against overflow in BinaryInputStream.
BUG=angleproject:1112
Change-Id: I6d58d9e0db97ec6c67661abd92b57f61f357d6b5
Reviewed-on: https://chromium-review.googlesource.com/316640
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
41a2b8ea
|
2015-12-07T21:44:26
|
|
Revert "Protect against overflow in BinaryInputStream."
This reverts commit dfa2fe31ad66ede57af1c0244ee99b8918eb2d9b.
Change-Id: If4a7eb1876876991c537d0a9077cede52ba40b95
Reviewed-on: https://chromium-review.googlesource.com/316621
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
a5ed56ee
|
2015-12-07T16:32:59
|
|
D3D11: Mask off alpha channel for RGBA->RGB blits.
We emulate RGB8 in D3D11 with RGBA8 textures. Make sure when we blit
that we don't copy the unused texture channel.
BUG=angleproject:1245
TEST=dEQP-GLES3.functional.fbo.blit.*
Change-Id: I805132fda984860a6d84ad4c1fc7169973938df9
Reviewed-on: https://chromium-review.googlesource.com/316010
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|