|
0dcaaf77
|
2016-02-10T10:58:59
|
|
Re-enable win_angle_x64_dbg_ng as a trybot target.
BUG=chromium:585270
Change-Id: I94b78d21aa700fbc7549f9f30534ba9f414780a3
Reviewed-on: https://chromium-review.googlesource.com/326924
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3271328c
|
2016-02-09T23:52:21
|
|
Revert "Re-enable win_angle_x64_dbg_ng as a trybot target."
This reverts commit b36b491c00924acfc03c71453833c442b7a22be6.
Forgot to restart the tryserver.chromium.angle waterfall to add this bot, and now waterfall restarts are broken: http://crbug.com/585632 .
Change-Id: Id25ac99a54013a9dd1406d4680717bef12a75940
Reviewed-on: https://chromium-review.googlesource.com/327033
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
b36b491c
|
2016-02-08T15:55:49
|
|
Re-enable win_angle_x64_dbg_ng as a trybot target.
BUG=chromium:585270
Change-Id: I9d95667d676f54bfe8901a428a6cb5eddf927819
Reviewed-on: https://chromium-review.googlesource.com/326830
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
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>
|
|
15e890e6
|
2016-02-08T16:06:11
|
|
Remove unused texture format source files
These files are not included in the build, they have been replaced by
autogenerated files.
TEST=build on Windows
Change-Id: I6b8448d6f2426bc05c01b7ec6db605e6047ee207
Reviewed-on: https://chromium-review.googlesource.com/326660
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
ded2e2ee
|
2016-02-08T19:32:19
|
|
Remove unreferenced member of Renderer11, mDepthStencilInitialized.
BUG=angleproject:1260
Change-Id: I3773297a4e517e2fca7072f56f3bdbec0a561d9a
Reviewed-on: https://chromium-review.googlesource.com/326851
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1eabcf41
|
2016-02-02T13:54:00
|
|
Replace '> >' with '>>'
BUG=angleproject:1308
Change-Id: I00bd2ea939b633817662205eb7879efb7f99965f
Reviewed-on: https://chromium-review.googlesource.com/326400
Reviewed-by: 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>
|
|
c9bdeff4
|
2016-02-08T12:36:55
|
|
D3D11: Refactor RenderTarget apply into StateManager11.
This is a refactoring patch only, and doesn't change the behaviour.
The intent is to make it easy to turn on the Framebuffer dirty bits
in a subsequent patch, once we can cleanly handle textures and
renderbuffers getting recreated.
BUG=angleproject:1260
Change-Id: Iaa5cfe222b020724e088eee5f1ae909b6f981a08
Reviewed-on: https://chromium-review.googlesource.com/325423
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
570f67d7
|
2016-02-05T15:28:24
|
|
Download GN in the gclient hooks.
Recently git cl format has started requiring GN and would fail when run
in the ANGLE standalone repository because the binary was not present.
BUG=
Change-Id: I0482db6fd6a868dc02ef6e395e6ff4817623c291
Reviewed-on: https://chromium-review.googlesource.com/326420
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@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>
|
|
c674abeb
|
2016-02-05T17:24:20
|
|
Refactor InputLayoutCache::applyVertexBuffers.
The redesigned code places the internal buffers and input elements for
instance point sprite emulation (FL9_3) at the start of the arrays,
instead of swapping with the first non-instanced element. This makes
the tracking logic of the caching somewhat cleaner.
This facilitates the work of implementing instancing-on-instancing for
FL9_3 conformance.
BUG=angleproject:1279
Change-Id: Ifb030816a313b1e8b916c57ef05915914443312a
Reviewed-on: https://chromium-review.googlesource.com/325090
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
3a913264
|
2016-02-06T01:34:25
|
|
Revert "Avoid a copy in TextureStorage11::setData"
Fails on the Windows builders:
https://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Win%20Builder/builds/42201
e:\b\build\slave\gpu_win_builder\build\src\third_party\angle\src\libangle\renderer\d3d\d3d11\load_functions_table_autogen.cpp(787) : error C2440: 'return' : cannot convert from 'const std::map<GLenum,rx::LoadImageFunction,std::less<_Kty>,std::allocator<std::pair<const _Kty,_Ty>>>' to 'const std::map<GLenum,rx::d3d11::LoadImageFunctionInfo,std::less<_Kty>,std::allocator<std::pair<const _Kty,_Ty>>> &'
with
[
_Kty=GLuint
, _Ty=rx::LoadImageFunction
]
and
[
_Kty=GLuint
, _Ty=rx::d3d11::LoadImageFunctionInfo
]
Reason: cannot convert from 'const std::map<GLenum,rx::LoadImageFunction,std::less<_Kty>,std::allocator<std::pair<const _Kty,_Ty>>>' to 'const std::map<GLenum,rx::d3d11::LoadImageFunctionInfo,std::less<_Kty>,std::allocator<std::pair<const _Kty,_Ty>>>'
with
[
_Kty=GLuint
, _Ty=rx::LoadImageFunction
]
and
[
_Kty=GLuint
, _Ty=rx::d3d11::LoadImageFunctionInfo
]
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
This reverts commit 52d3e43b66478b07d26c95a5511d4132cec26000.
Change-Id: I83774ea09ccbb2b92ff609714e1c7201beb775bc
Reviewed-on: https://chromium-review.googlesource.com/326540
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>
|
|
52d3e43b
|
2016-02-03T13:40:37
|
|
Avoid a copy in TextureStorage11::setData
This is essentially a reland of 9cf9bcbecaa1e54a47a92eb784e7f591f7b65c57
This code always allocates a new memory buffer for the texture memory,
picks a load function to copy/convert the input data into it, and the
uploads.
In the case where the input format matches the upload format we should
be able to skip the allocation and copy and be much happier.
Change-Id: I3c1a0ab34be91c7d39eb2d0866029d01352b6056
Reviewed-on: https://chromium-review.googlesource.com/325526
Tryjob-Request: John Bauman <jbauman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@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>
|
|
dbc9ccfb
|
2016-02-02T11:44:21
|
|
Remove the _ANGLE targets from the GN build.
They are no longer needed by Chromium.
BUG=522967
Change-Id: I187eed52378a58f3ea24c3e21082c6a93e56da7f
Reviewed-on: https://chromium-review.googlesource.com/325330
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@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>
|
|
7718c05b
|
2015-12-28T20:34:34
|
|
Enable EGL_ANGLE_keyed_mutex on D3D11
Pbuffers created using eglCreatePbufferFromClientBuffer from share handles
created using keyed mutexes can now have their keyed mutex queried. All other
pbuffers will continue to be created without keyed mutexes.
BUG=337606
Change-Id: Id9039064dd8c89fe1706cc8ecb31111c994761fc
Reviewed-on: https://chromium-review.googlesource.com/324253
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
00140f4a
|
2016-02-03T18:47:33
|
|
Revert "Pass texture base level to shaders on D3D11"
This reverts commit 3026829e155bd89b5ca5b7b7c5267699b9192557.
Change-Id: I0b4c3f5b1453b993b149423bb1ce407f4918cf54
Reviewed-on: https://chromium-review.googlesource.com/325435
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3026829e
|
2016-01-15T16:40:00
|
|
Pass texture base level to shaders on D3D11
The base level is passed to shaders in a uniform block created
specifically for passing sampler metadata. This is done on feature levels
above 9_3, which treat samplers as indices to sampler arrays in shaders.
BUG=angleproject:596
TEST=angle_end2end_tests
Change-Id: I846f2fc195ab1fd884052824ffd3c1d65083c0fb
Reviewed-on: https://chromium-review.googlesource.com/322122
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
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>
|
|
5e017349
|
2016-02-01T11:13:04
|
|
Add Debug labels to more D3D11 objects.
This makes debugging using graphics tools easier on Windows.
BUG=angleproject:1290
BUG=angleproject:1299
Change-Id: Ia3889c10fd8e23486f0122e0b567c470517bc9e0
Reviewed-on: https://chromium-review.googlesource.com/324821
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>
|
|
69a75a2e
|
2015-11-03T16:40:28
|
|
Add an EGL spec for EGL_experimental_present_path_angle
BUG=angleproject:1219
Change-Id: I1e303ec30ffe877aebf00720620b818c335fac76
Reviewed-on: https://chromium-review.googlesource.com/310652
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
|
|
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>
|
|
331c68a2
|
2016-02-01T18:54:48
|
|
Remove win_angle_x64_dbg_ng tryserver.
This won't be mirrored on the waterfall for the time being due to lack
of hardware.
BUG=542370
Change-Id: I2ecfde30f66d3dcdde2d05144d647c2b4b5c83d3
Reviewed-on: https://chromium-review.googlesource.com/325133
Tested-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
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>
|
|
541591d5
|
2016-01-28T14:27:50
|
|
Fix some override related warnings.
BUG=
Change-Id: I9e67ba2165ac87959f319fd2485fe385c60a8ea0
Reviewed-on: https://chromium-review.googlesource.com/324461
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@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>
|
|
7c41df13
|
2016-02-01T08:55:14
|
|
DisplayGLX: fix a SwapControl copy-paste error
BUG=angleproject:1304
Change-Id: If0ec8682b1d519bc6460cd6ed82f42c4c1ceb952
Reviewed-on: https://chromium-review.googlesource.com/324930
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@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>
|
|
f2523eb7
|
2016-01-28T14:25:04
|
|
DisplayGLX: disable the GLES backend on Intel and NVIDIA
This is to fix failures in the automated testing while we work on them.
BUG=angleproject:1303
Change-Id: I0813b5cf1dca1e329504704c70b9d2b0c34d003b
Reviewed-on: https://chromium-review.googlesource.com/324460
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@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>
|
|
89853e84
|
2016-01-28T10:36:36
|
|
Clean up unused variable macros.
We might want UNUSED_ASSERTION as a special case but the unused trace
variable macro was being abused in places.
BUG=angleproject:1290
Change-Id: I5f9252b3ff0484d2e859b9fcf68d5d060b28f1fc
Reviewed-on: https://chromium-review.googlesource.com/324290
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
eaaeb7fb
|
2016-01-27T16:07:07
|
|
Disable support for OpenGL ES targets with WGL on Intel drivers.
BUG=angleproject:1145
Change-Id: I9f3a8926eaad88076026f58922289487f90518c7
Reviewed-on: https://chromium-review.googlesource.com/324270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@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>
|
|
b3844843
|
2016-01-27T15:03:06
|
|
Remove the now unused _ANGLE targets.
BUG=522967
Change-Id: I9a5c1793b089920273c74ab43fd5464d0aea7adb
Reviewed-on: https://chromium-review.googlesource.com/324022
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
a832742d
|
2016-01-27T22:22:52
|
|
Touch Infraustructure CQ config.
Change-Id: I9f733055ba3c22950eeedc17e756fe50af272a16
Reviewed-on: https://chromium-review.googlesource.com/324280
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Tested-by: Andrii Shyshkalov <tandrii@chromium.org>
|
|
4c06817a
|
2016-01-25T15:50:20
|
|
Add support for targetting GLES with DisplayGLX.
BUG=angleproject:1145
Change-Id: I3072c31f2f743943b2ed9a3b1a020529112d5f71
Reviewed-on: https://chromium-review.googlesource.com/324091
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
2e5dd41c
|
2016-01-27T13:16:35
|
|
Fix warnings from shadowed variables in DXGISwapChainWindowSurfaceWGL.
BUG=540829
Change-Id: I3595f316afa1897224ad95d6f9a3da3685aa0831
Reviewed-on: https://chromium-review.googlesource.com/324032
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
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>
|
|
ed1afee6
|
2016-01-27T16:03:22
|
|
Reland "Infrastructure: CQ Verified label is no longer required."
This re-lands https://chromium-review.googlesource.com/#/c/323690/. It didn't break tryjobs, they actually didn't work.
Change-Id: Id3da7658515f59e8dae550816d82b1fcce1e5f7a
Reviewed-on: https://chromium-review.googlesource.com/324220
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Tested-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@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>
|
|
722b0d31
|
2015-12-08T11:46:28
|
|
Add a WGL Surface implementation that renders to a DXGI swap chain.
This avoids sandbox issues when calling SetPixelFormat on windows from
other processes while in a sandboxed process.
BUG=540829
Change-Id: I012168531d8c2e5b189671533cea9f57ec713538
Reviewed-on: https://chromium-review.googlesource.com/296340
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@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>
|
|
436e32ae
|
2016-01-15T15:53:12
|
|
GLX backend: check for child window resizes on eglWaitNative
This is the standard way, if not often used, for application to notify
the driver of window size changes. Chromium uses it to resize when it
is done rendering and swapping so that drivers do not clobber the
backbuffer.
This fixes black flickering appearing when resizing the Chromium
windows with --use-gl=angle.
BUG=angleproject:1281
Change-Id: Ic76f3c3ef453eae07eb59122135290411f86764d
Reviewed-on: https://chromium-review.googlesource.com/322390
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
c1069a08
|
2016-01-22T15:27:20
|
|
D3D11: Add a TextureHelper class to wrap 2D+3D reads.
In some cases in our code we had hard-coded ID3D11Texture2D, where
the code should handle 2D and 3D textures. This happens in ReadPixels,
where we have to handle 3D textures when the user binds a layer of a
3D textures with FramebufferTextureLayer.
This is a refactoring patch only, which makes the error cleaner.
Tests and the bug fix to come in a follow-up patch.
BUG=angleproject:1290
Change-Id: Ie1c293dead4d5b6b4dd6ce24ba2a9146619b141d
Reviewed-on: https://chromium-review.googlesource.com/322680
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@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>
|
|
b8d28399
|
2016-01-25T19:49:46
|
|
Revert "Infrastructure: CQ Verified label is no longer required."
This might cause analyze weirdness as shown in tryjobs here.
NOTRY=true
This reverts commit 5b74bd390334b1c988bb4b941e7765b992f611f7.
Change-Id: I018925a55ce4cebbc873e8c0ebb4b97ae9ca1020
Reviewed-on: https://chromium-review.googlesource.com/323581
Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
Tested-by: Andrii Shyshkalov <tandrii@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@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>
|
|
9d81989d
|
2016-01-22T16:56:04
|
|
Add GL_OES_EGL_image functions.
Needed to work on Chrome OS.
BUG=angleproject:1297
Change-Id: I78e18472780745f73257c8954f263d236ff92180
Reviewed-on: https://chromium-review.googlesource.com/323470
Tryjob-Request: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Frank Henigman <fjhenigman@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>
|
|
5b74bd39
|
2016-01-25T15:17:50
|
|
Infrastructure: CQ Verified label is no longer required.
BUG=577560
Change-Id: Ibd5b8bfd0da1631b03317dc6d0c85c649c947c12
Reviewed-on: https://chromium-review.googlesource.com/323690
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Tested-by: Sergiy Byelozyorov <sergiyb@chromium.org>
|
|
33db61d1
|
2016-01-20T10:54:49
|
|
Add support for targetting GLES with DisplayWGL.
BUG=angleproject:1145
Change-Id: I5a0a667621aceedb4662cfb2356d7dbd0d9f7718
Reviewed-on: https://chromium-review.googlesource.com/285557
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
451ed25a
|
2016-01-21T21:16:45
|
|
Fix packSnorm2x16.
Casting -32767.0f to uint16_t on Android resulted in 0.
According to C99 6.3.1.4 footnote 50 this kind of cast behavior is unspecified
BUG=angleproject:913
TEST=build/android/test_runner.py gtest -s angle_unittests --release
Change-Id: I136386fe0aa618c17f07f99d8e1ca72fa407d36a
Reviewed-on: https://chromium-review.googlesource.com/323230
Tryjob-Request: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Yuly Novikov <ynovikov@chromium.org>
|
|
a8e3494e
|
2016-01-20T10:51:40
|
|
Don't force using sized internal texture formats for OpenGL ES.
* LUMA formats don't have sized versions without specific extensions.
* This allows a more direct translation, the driver should do the right
thing.
BUG=angleproject:884
BUG=angleproject:1145
Change-Id: I2ad13db7216eb7c715621a237b13ae9e3035310a
Reviewed-on: https://chromium-review.googlesource.com/322694
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b2d9ab67
|
2016-01-20T10:50:09
|
|
Update FunctionsGL to load OpenGL ES entry points.
BUG=angleproject:1145
BUG=angleproject:879
Change-Id: I04eb900df28909f97469691a6c05a6af775d7465
Reviewed-on: https://chromium-review.googlesource.com/322693
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
b9deac1c
|
2016-01-20T10:47:50
|
|
Fix version check for GL_MAX_VARYING_COMPONENTS with OpenGL ES.
BUG=angleproject:1145
Change-Id: Ibd5dab0fe54516427e6f7697559fb0ef670e1035
Reviewed-on: https://chromium-review.googlesource.com/322692
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
70c27e8e
|
2016-01-20T14:41:42
|
|
Revert "Revert "WindowSurfaceCGL: unregister the SwapLayer on destruction""
This reverts commit 10277159570e987a02a112fa994a4b82845786d3.
Change-Id: I9ecf977845c6ee01d7c3e3791c23673407cfb91a
Reviewed-on: https://chromium-review.googlesource.com/322213
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
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>
|
|
c9d442d7
|
2016-01-20T11:17:24
|
|
Sync dirty objects at the GL layer.
The dirty bit system currently puts dirty objects in line with the
rest of the dirty state. This means at the Renderer level, the sync
manager code would call back to the GL layer to sync the specific
objects that are dirty. This is a bit of a layering violation (impl
layer mutating top-level objects) and also a bit of repeated boiler-
plate code.
Fix this by treating dirty objects in a separate dirty bit set, called
the dirty objects. This also has the benefit of allowing us to re-
implement the dirty object set at a later date, if we want to store
them in a list, or other structure.
Also don't skip the state sync at the GL level if there are no GL
dirty bits. The Impl might have some dirty bits locally, and it's
better to call syncState and do the no-op check in the Impl than it
is to also sync local state at every sync point (draw call, read, etc)
in each Impl.
BUG=angleproject:1260
Change-Id: Id5d4beb2a1c4e3ad351edf54e3f32e828d5f5da3
Reviewed-on: https://chromium-review.googlesource.com/318790
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Jamie Madill <jmadill@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>
|
|
c29968bb
|
2016-01-20T11:17:23
|
|
Refactor FBO related entry points.
Change the validation to the consistent style for easy auto-generation
and make the context itself implement the entry points. This will more
easily allow us to sync state without passing the Context to the
Texture methods, or doing work in the entry point.
BUG=angleproject:1260
BUG=angleproject:747
Change-Id: I7ed6ec5418b7f51d9e59529267b14b76b87743fb
Reviewed-on: https://chromium-review.googlesource.com/319823
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>
|
|
45838e33
|
2016-01-15T11:40:56
|
|
WindowSurfaceGLX: ignore X11 when destroying windows
Chromium seems to destroy the parent window before calling asking to
destroy the EGL surface. We don't want to generate a BadWindow X11
error in this case so we ignore errors when calling XDestroyWindow.
BUG=angleproject:1281
Change-Id: Ie63d188b6206c0ff3b5ac6a5a874e7d6018489e4
Reviewed-on: https://chromium-review.googlesource.com/322361
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>
|
|
07651e24
|
2016-01-20T10:45:08
|
|
Fix OpenGL ES extension checks for floating point textures.
BUG=angleproject:1145
BUG=angleproject:884
Change-Id: I1ab16a187155573989f0605dbdd06f73ad8c8c58
Reviewed-on: https://chromium-review.googlesource.com/322691
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0e7fe675
|
2016-01-20T10:41:05
|
|
Don't expose OES_texture_float_linear without OES_texture_float.
Due to our extra logic that only exposes OES_texture_float if the format
is renderable, it's possible that the OES_texture_float_linear can be
exposed without OES_texture_float. Make sure that can't happen.
BUG=angleproject:1145
Change-Id: I9b1262a39872abf4654d4e4751706679e24926f3
Reviewed-on: https://chromium-review.googlesource.com/322690
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
7cfcdf06
|
2016-01-18T20:06:25
|
|
Set up infra config folder with CQ configuration.
BUG=503611,577560
Change-Id: I4ecb2c6a01c81f6a93c8ff4a52b89789711b23a5
Reviewed-on: https://chromium-review.googlesource.com/322142
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Reviewed-by: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Tested-by: Andrii Shyshkalov <tandrii@chromium.org>
|
|
45095581
|
2016-01-14T16:53:36
|
|
Enable resource sharing for D3D11 devices created with WARP
ANGLE currently blocks resources sharing if ANGLE was initialized using
EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE. This is to prevent applications
from trying to share resources between hardware D3D devices and WARP.
However, this prevents developers from deliberately initializing ANGLE
to run on WARP, and then sharing resources with an external WARP device.
ANGLE should support that scenario.
BUG=angleproject:1283
Change-Id: I86681355bf34f7fe3367261dd76c434a9fa60739
Reviewed-on: https://chromium-review.googlesource.com/317318
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
88829e84
|
2016-01-12T13:04:41
|
|
Don't compile D3D geometry shader when using instanced point emulation
If ANGLE is using instanced point sprites (e.g. on Feature Level 9_3) then it
still tries to compile the point sprite geometry shader. It shouldn't do this.
Change-Id: I6e7753dd337c385893fc4bea6c8438aeaf5e8427
Reviewed-on: https://chromium-review.googlesource.com/321397
Tryjob-Request: Austin Kinross <aukinros@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a433388d
|
2016-01-14T17:24:50
|
|
Implement eglWait*
This mostly does nothing except on X11 where it calls the equivalent
glXWait*. eglWait* are needed because they are used by Chromium and
were triggering an UNREACHABLE().
BUG=angleproject:1281
Change-Id: Iff9c127b16841bc27728304a5ba2caff49ff11b5
Reviewed-on: https://chromium-review.googlesource.com/322360
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
10277159
|
2016-01-19T13:22:48
|
|
Revert "WindowSurfaceCGL: unregister the SwapLayer on destruction"
This reverts commit da66ed625901c1ec2df324aa9563ee275130be4f.
Change-Id: Ifcef6e06d1f3f30c14f4397d659df6bab857d05d
Reviewed-on: https://chromium-review.googlesource.com/322392
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
986d09df
|
2016-01-07T11:23:21
|
|
Improved performance of RefCountObject
Drop virtual specifier on addRef() and release(). There are no derived
classes which re-implement these functions.
Inlined implementation of constructor and destructor. Destructor is
still virtual, but empty implementation is now visible for derived
classes. Destructor is now protected to make sure that object is
destructed through release().
BUG=angleproject:1263
Change-Id: I744430c1d99b917f3d7b63d47305d937be323ee7
Reviewed-on: https://chromium-review.googlesource.com/320861
Tryjob-Request: Tibor Ouden, den <tibordenouden@gmail.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
46e6c7a5
|
2016-01-18T14:42:30
|
|
Add stubs for no_error extension.
In some cases ANGLE flushes state for FBOs during validation. For
testing of the state synching code for FBOs, this makes end-to-end
testing impossible.
Solve this by partially implementing a hidden no_error extension,
hidden to the user by not exposing the extension string, but allowing
us to skip validation of some of the FBO methods that require checking
for complete FBOs.
BUG=angleproject:1280
BUG=angleproject:1260
Change-Id: I708f348ccec6697b974c48cd890ec75a703abe21
Reviewed-on: https://chromium-review.googlesource.com/322210
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>
|
|
e5df3066
|
2015-11-18T13:45:19
|
|
D3D: Run applyTextures before applyShaders
applyShaders will update uniform data by uploading the constant buffer.
In the future uniform data will contain the base level of textures so
that shaders can use it to adjust results of texture functions. The most
natural place to set the base level in uniform data is applyTextures, so
it needs to be run before applyShaders.
updateSamplerMapping needs to be called before applyTextures, but
genericDraw* functions already do that. Remove redundant
updateSamplerMapping call from ProgramD3D::applyUniforms.
BUG=angleproject:596
BUG=angleproject:1092
BUG=angleproject:1261
TEST=angle_end2end_tests
Change-Id: I1828f7bdc75999872a26941a02cb4b6c6a66094d
Reviewed-on: https://chromium-review.googlesource.com/322121
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Geoff Lang <geofflang@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>
|
|
60f007d5
|
2016-01-18T19:49:00
|
|
Remove obsolete parts of codereview.settings.
Change-Id: Id59fca42b922c5c9bacb6eaed36ceb59e839d35e
Reviewed-on: https://chromium-review.googlesource.com/322133
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Andrii Shyshkalov <tandrii@chromium.org>
Tested-by: Andrii Shyshkalov <tandrii@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>
|
|
da66ed62
|
2016-01-08T13:35:02
|
|
WindowSurfaceCGL: unregister the SwapLayer on destruction
Previously the SwapLayer was kept in the CALayer hierarchy after
WindowSurfaceCGL's destruction which caused SwapLayer's callbacks to be
called after the shared data was freed, causing a segfault.
BUG=angleproject:1233
Change-Id: I71dce45330e6b7d5f06a41198c10890b1d8d520e
Reviewed-on: https://chromium-review.googlesource.com/320711
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>
|
|
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>
|
|
8ff8da52
|
2016-01-14T17:42:23
|
|
Create DirectComposition backbuffers as SHADER_INPUT
With EGL_ANGLE_surface_orientation this is now necessary.
Change-Id: I92a20a128640f7f30b8d1d18173336d40fdad187
Reviewed-on: https://chromium-review.googlesource.com/322265
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: John Bauman <jbauman@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>
|
|
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>
|