|
cf9b2853
|
2019-02-13T09:15:26
|
|
Roll Google Test.
Updates our build files to be more consistent with Chromium.
Also rolls SPIRV-Tools to use newer test fixture syntax.
Note: requires an update to SPIRV-Tools to pass 'gn check'.
Bug: angleproject:3151
Change-Id: I8abddef396f84e5c58cdd185421f03fd6e2b6d58
Reviewed-on: https://chromium-review.googlesource.com/c/1470591
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
b9039bf7
|
2019-02-12T15:30:48
|
|
Vulkan: fix numerous formats missing support
Vulkan _SRGB formats have a suffix of _UNORM_SRGB in the corresponding
angle name.
Vulkan A2B10G10R10_*_PACK32 formats have angle names in the form
R10G10B10A2_*.
A16 and A32 formats are emulated similar to A8.
Some formats that are not in the front-end are removed.
Bug: angleproject:2364, angleproject:2405
Change-Id: I00718f450a374912d57d3c00ea167ce486e10aa0
Reviewed-on: https://chromium-review.googlesource.com/c/1468042
Reviewed-by: Jamie Madill <jmadill@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
ee4fa078
|
2019-02-21T19:21:09
|
|
Reland "Create Container ANGLE APK"
This reverts commit 902ceed3998617e97aad25d6b632f9e34dff2644.
Reason for revert:
Re-landing this since the Chromium build fix has landed:
https://bugs.chromium.org/p/chromium/issues/detail?id=933783#c29
Comment 29 by gbeaty@chromium.org, Today (13 minutes ago)
Tim, you should be able to re-land your change now.
Original change's description:
> Revert "Create Container ANGLE APK"
>
> This reverts commit e82c857d38549da44de2c055e9e677a368e8793f.
>
> Reason for revert:
> This is breaking the ANGLE build in the Chromium build process:
>
> https://bugs.chromium.org/p/chromium/issues/detail?id=933783#c6
>
> Original change's description:
> > Create Container ANGLE APK
> >
> > The ANGLE APK needs to be reverted back to just being a container
> > for the ANGLE shared object libraries, since the rest of the APK
> > contents are in the Android source tree.
> >
> > Bug: angleproject:3154
> > Test: 'adb sync' the APK on to a device
> > Change-Id: Id245f1e3d269c71054d9759e8ba8be0532afe659
> > Reviewed-on: https://chromium-review.googlesource.com/c/1474341
> > Commit-Queue: Tim Van Patten <timvp@google.com>
> > Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
>
> TBR=ynovikov@chromium.org,jmadill@google.com,cnorthrop@google.com,courtneygo@google.com,timvp@google.com
>
> Change-Id: I71a739faa2052a707a06bce616ab43a621d5a4ff
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: angleproject:3154
> Reviewed-on: https://chromium-review.googlesource.com/c/1478333
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Commit-Queue: Tim Van Patten <timvp@google.com>
TBR=ynovikov@chromium.org,jmadill@google.com,cnorthrop@google.com,courtneygo@google.com,timvp@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: angleproject:3154
Change-Id: If3a9abfb1c00aab3278437a233bef29d5febe5a5
Reviewed-on: https://chromium-review.googlesource.com/c/1480865
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
962c222a
|
2019-02-20T15:43:41
|
|
Vulkan: Enable anisotropy feature when available
If anisotropic filtering is used, the feature must be enabled at device
creation time. This was missing.
Bug: angleproject:2901
Change-Id: I86db55f8b1696dc04eae922b941512f786aa12b8
Reviewed-on: https://chromium-review.googlesource.com/c/1479264
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@google.com>
|
|
08573730
|
2019-02-20T19:59:22
|
|
Enable vertex_arrays tests on Android.
These appear to be passing now.
Bug: angleproject:1484
Change-Id: I0a52f73c87aeea2e0fba360063109b74aa6aa365
Reviewed-on: https://chromium-review.googlesource.com/c/1479904
Reviewed-by: Jamie Madill <jmadill@google.com>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
568a3425
|
2019-02-20T19:58:41
|
|
Enable texture.mipmap tests on Android.
These appear to be passing on the bots.
Bug: angleproject:1489
Change-Id: I1d672187f9bfe72189291309b90049fd128b1392
Reviewed-on: https://chromium-review.googlesource.com/c/1479903
Reviewed-by: Jamie Madill <jmadill@google.com>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
6cdb01f4
|
2019-02-20T19:54:24
|
|
Update fbo.completeness expectations on Android.
The depth_stencil_unsigned_int_24_8 tests are passing now.
The srgb8 failures are tracked in http://anglebug.com/1028.
Bug: angleproject:1487
Change-Id: Id85fc00acfd1b59d4b7bfdd00596f2c18a583e5c
Reviewed-on: https://chromium-review.googlesource.com/c/1479902
Reviewed-by: Jamie Madill <jmadill@google.com>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
1ceb9c8e
|
2019-02-20T19:50:57
|
|
Enable clipping.triangle_vertex test on Android.
Seems to be fixed with newer compilers.
Bug: angleproject:1485
Change-Id: I2954548d8f5370b57302c40fc40b6458f79fd7ed
Reviewed-on: https://chromium-review.googlesource.com/c/1479901
Reviewed-by: Jamie Madill <jmadill@google.com>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
2ac98885
|
2019-02-20T18:49:57
|
|
Enable fbo.completeness.attachment_combinations on Android.
These tests are all passing with "unsupported".
Bug: angleproject:1486
Change-Id: I532000b4934ed66fd61f39312013a6da8f3dd86f
Reviewed-on: https://chromium-review.googlesource.com/c/1479897
Reviewed-by: Jamie Madill <jmadill@google.com>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
eef531f1
|
2019-02-20T16:33:21
|
|
Disable broken test on Fuchsia
This disables the ImageTest.SourceCubeTargetRenderbuffer test
that does not work on Fuchsia.
BUG=angleproject:2475, angleproject:3145
TEST=angle_end2end_tests on Fuchsia
Change-Id: I8e681926ee322642b39c32b3bc0cd266ffa1d11f
Reviewed-on: https://chromium-review.googlesource.com/c/1479283
Reviewed-by: Jamie Madill <jmadill@google.com>
Commit-Queue: Jamie Madill <jmadill@google.com>
|
|
ffd39978
|
2019-02-20T10:45:24
|
|
test: Replace _TEST_CASE_ with _TEST_SUITE_.
Googletest is (at last) converging with industry-standard terminology
[1]. We previously called test suites "test cases", which was rather
confusing for folks coming from any other testing framework.
Chrome now has a googletest version that supports _TEST_SUITE_ macros
instead of _TEST_CASE_, so this CL cleans up some of the outdated usage.
[1] https://github.com/google/googletest/blob/master/googletest/docs/primer.md#beware-of-the-nomenclature
Bug: chromium:925652
Change-Id: Ia0deec0bc4216ef1adabc33985a7cbda89682608
Reviewed-on: https://chromium-review.googlesource.com/c/1477418
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Victor Costan <pwnall@chromium.org>
|
|
902ceed3
|
2019-02-20T16:49:22
|
|
Revert "Create Container ANGLE APK"
This reverts commit e82c857d38549da44de2c055e9e677a368e8793f.
Reason for revert:
This is breaking the ANGLE build in the Chromium build process:
https://bugs.chromium.org/p/chromium/issues/detail?id=933783#c6
Original change's description:
> Create Container ANGLE APK
>
> The ANGLE APK needs to be reverted back to just being a container
> for the ANGLE shared object libraries, since the rest of the APK
> contents are in the Android source tree.
>
> Bug: angleproject:3154
> Test: 'adb sync' the APK on to a device
> Change-Id: Id245f1e3d269c71054d9759e8ba8be0532afe659
> Reviewed-on: https://chromium-review.googlesource.com/c/1474341
> Commit-Queue: Tim Van Patten <timvp@google.com>
> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
TBR=ynovikov@chromium.org,jmadill@google.com,cnorthrop@google.com,courtneygo@google.com,timvp@google.com
Change-Id: I71a739faa2052a707a06bce616ab43a621d5a4ff
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3154
Reviewed-on: https://chromium-review.googlesource.com/c/1478333
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
3d544fff
|
2019-02-19T12:02:06
|
|
Temporarily disable creating D3D debug device.
To diagnose whether Windows Intel end2end tests flakiness
is related to creating debug device and new version of Windows SDK.
Bug: angleproject:3153
Change-Id: Ica7eae3fe875e22203b6dfd98b83604d66a97737
Reviewed-on: https://chromium-review.googlesource.com/c/1476954
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
e82c857d
|
2019-02-14T16:22:20
|
|
Create Container ANGLE APK
The ANGLE APK needs to be reverted back to just being a container
for the ANGLE shared object libraries, since the rest of the APK
contents are in the Android source tree.
Bug: angleproject:3154
Test: 'adb sync' the APK on to a device
Change-Id: Id245f1e3d269c71054d9759e8ba8be0532afe659
Reviewed-on: https://chromium-review.googlesource.com/c/1474341
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
1d35d511
|
2019-02-15T15:39:27
|
|
Revert "Fix unit test for setting locale creating malformed HLSL shader code"
This reverts commit 5f662c0042703344eb0eef6d1c123e902e3aefbf.
Reason for revert: Some recent crashes related to streams, could be
related to this change.
https://bugs.chromium.org/p/chromium/issues/detail?id=932359
Original change's description:
> Fix unit test for setting locale creating malformed HLSL shader code
> Fix malformed HLSL shader code in other locales than classic
>
> Bug: angleproject:1433
> Change-Id: I30bad0bd0cfda465ec7200e48e12800d7d8efd26
> Reviewed-on: https://chromium-review.googlesource.com/c/1447862
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
TBR=geofflang@chromium.org,jmadill@chromium.org,jonahr@google.com
Bug: angleproject:1433
Change-Id: I28caa073b3996a95f3f233bed9dc91dc44263835
Reviewed-on: https://chromium-review.googlesource.com/c/1474624
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
aca30f56
|
2019-02-18T17:16:04
|
|
Roll googletest to the same version as Chromium.
Bug: chromium:925652
Change-Id: Id59c29ede2fea155628bdfa2218067a28109f069
Reviewed-on: https://chromium-review.googlesource.com/c/1476874
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6a492c27
|
2019-02-18T13:45:02
|
|
Update ES31 dEQP test expectation
More SSBO related deqp cases pass due to the implementation of atomic
counter.
Bug: angleproject:1951
Change-Id: I1a6ed6001b9b2d06e74aab105d1a7852abbb9902
Reviewed-on: https://chromium-review.googlesource.com/c/1476950
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
|
|
028df5f5
|
2019-02-13T12:57:10
|
|
Vulkan: Implement transfer path for texture copy
This is primarily in preparation for compressed texture copy, but has
the following side effect:
- When transfer is possible, it's faster than draw
- When texture format does not support draw (but transfer is possible),
it will avoid copying through CPU.
Bug: angleproject:2670
Change-Id: I49e1b51e6ccec875db3f971106687c7d48c4916f
Reviewed-on: https://chromium-review.googlesource.com/c/1470595
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
8a64926e
|
2019-02-15T13:55:36
|
|
Restore the active program after transform feedback
When calling EndTransformFeedback, we might change the current program.
This sets a dirty bit, but it might not get cleared before the next
draw call, so this change makes us manually restore the program state
after calling EndTransformFeedback.
This is a follow-up to:
https://chromium-review.googlesource.com/c/angle/angle/+/1448661
Bug: 832238
Change-Id: I1bea1b9685f55d68b04439a9b0a305deb48708c0
Reviewed-on: https://chromium-review.googlesource.com/c/1475061
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
23ed69cb
|
2019-01-23T10:36:34
|
|
Make WARN() and ERR() thread safe
This adds a global mutex lock to protect logging messages from
worker threads.
BUG=922936
Change-Id: I42e2a7b560da6f6a8b120b74252adce115ccda20
Reviewed-on: https://chromium-review.googlesource.com/c/1429479
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9429f216
|
2019-02-15T10:43:14
|
|
Vulkan: Add missing EGLConfigs for Android Native pixel formats
GL_RGBA16F correlates to HAL_PIXEL_FORMAT_RGBA_FP16.
GL_RGB10_A2 that correlates to HAL_PIXEL_FORMAT_RGBA_1010102.
This fills-in key holes between generated ANGLE config formats and the
Android native formats after GL_RGB565 was added to fix the configs
that were missing for some games.
Modified EGLContextCompatibilityTest to exclude GL_RGB10_A2 and
GL_RGBA16F from some of the EGLContextCompatibilityTest cases.
EGLContextCompatibilityTest uses the OSWindow utility, which only
works with UNORM-compatible EGLConfigs that are a proper subset of
GL_RGBA8. The new configs won't work with the WindowDifferentConfig
and WindowSameConfig test cases.
Bug: angleproject:3155
Change-Id: I693ed24f13ba787ea6d661f42ec65dc3d26f08f6
Reviewed-on: https://chromium-review.googlesource.com/c/1276807
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
b6c1c66d
|
2019-02-15T08:30:45
|
|
Vulkan: Discard scissor if either dimension is 0
Test:
adb shell am start -n com.drawelements.deqp/android.app.NativeActivity \
-e cmdLine '"deqp --deqp-case=dEQP-GLES2.functional.color_clear.* \
--deqp-log-filename=/sdcard/dEQP-Log.qpa"'
run_angle_end2end_tests --gtest_filter=ClearTest.EmptyScissor/ES2_VULKAN
Bug: angleproject:3114
Change-Id: Icd6ec39c993854f1dbc2fd9221b374e7d4541058
Reviewed-on: https://chromium-review.googlesource.com/c/1475235
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
25686848
|
2019-02-07T15:21:27
|
|
Refactor ANGLE's extensions struct to more easily represent multiple
vendor extension
Some extensions are available from multiple vendors with the same name,
while minimizing the amount of duplicated code and validation errors.
The anonymous struct allows individual vendor checks as well as an
"*Any()" check to check for any version of the extension.
Bug: angleproject:3104
Change-Id: Ib8b65cde850462d3746d9663496a595321817514
Reviewed-on: https://chromium-review.googlesource.com/c/1456619
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c1c9fb1b
|
2018-10-18T11:41:50
|
|
ES31: Add atomic counter buffer support to D3D11 renderer
Adds support for atomic counters to the D3D11 renderer using UAV.
Bug: angleproject:1729
Test: angle_end2end_tests
Change-Id: I2904ba62644685b7d91f7475bd80a81ae414993b
Reviewed-on: https://chromium-review.googlesource.com/c/1451259
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
aead8edf
|
2019-02-13T13:55:09
|
|
Mute worker context creation warnings
This moves the warnings to InfoLog.
Bug: chromium:931294
Change-Id: I1627aa63bdda6f92fc89b8921eb260302ba9063f
Reviewed-on: https://chromium-review.googlesource.com/c/1469721
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
|
|
559aaca5
|
2019-02-14T18:24:07
|
|
Fix texture and buffer data bugs in tests found by ASAN.
Bug: angleproject:3153
Change-Id: Iacb7b2b97b9fc5c68fbee03c66d71eb72a53b4d6
Reviewed-on: https://chromium-review.googlesource.com/c/1474342
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
4b654982
|
2019-01-31T17:04:14
|
|
GL backend: Transform feedback driver bug workaround
In some drivers, if transform feedback is paused and a new program is
bound, calling endTransformFeedback does not correctly unpause first,
creating an invalid paused but inactive state that causes errors later.
Before calling endTransformFeedback we first ensure that the current
program is the one associated with this transform feedback object when
beginTransformFeedback was called.
Bug: 832238
Change-Id: I2373b0c123fd20a7ee3ada76ed878d4968184476
Reviewed-on: https://chromium-review.googlesource.com/c/1448661
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
|
|
4154c1c1
|
2019-02-12T15:43:03
|
|
Fuchsia: Migrate ScenicWindow to ViewV2
Fuchsia is transitioning its view creation APIs. Migrate to the new one.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia
Change-Id: I09abfda18a5e3da46909b5b967325a083586a7d0
Reviewed-on: https://chromium-review.googlesource.com/c/1474337
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
366df2b2
|
2019-01-18T15:40:34
|
|
Vulkan: Support external texture binding points.
BUG=angleproject:2668
BUG=angleproject:3023
Change-Id: Idab0c4cbe1c7ed203ace50f1a6701dba11a40242
Reviewed-on: https://chromium-review.googlesource.com/c/1422548
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
77874e2c
|
2019-02-13T09:15:06
|
|
Vulkan: Reduce Default Descriptor Pool Max Sets
The current value of kDefaultDescriptorPoolMaxSets is 2048, which
allocates too much memory on a Pixel device, causing Android's low
memory killer to terminate dEQP (leading to a test failure). This change
reduces the value of kDefaultDescriptorPoolMaxSets to 128 to reduce the
memory usage during the test. We suspect a later change may be required
to dynamically grow the descriptor pools and update the recycling
behavior.
This change also exposed a bug in the ANGLERenderTest where the swap()
call was being skipped for null devices. This was causing code that
ANGLE requires to clean up and re-use resources to be skipped. Enabling
the swap() call fixes this issue as well as improves performance for
the test overall. This does make comparing old performance values to new
difficult (if not entirely incorrect), so take care when doing so.
dEQP-EGL.functional.multicontext.non_shared_clear
Bug: angleproject:3056
Bug: angleproject:3135
Change-Id: Ibdfd3a5eb436a7ba4e45002ebef5809afe777af1
Reviewed-on: https://chromium-review.googlesource.com/c/1470830
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
52047de4
|
2018-11-13T17:22:36
|
|
Vulkan: support instanced draws. (reland)
Enable instanced draws with the Vulkan backend.
So far it only works when Vulkan has VK_EXT_vertex_attribute_divisor.
BUG=angleproject:2672
Change-Id: Ib6655625776344305911a1a742c85f17638cee8f
Reviewed-on: https://chromium-review.googlesource.com/c/1469263
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
0c01e367
|
2019-02-13T21:27:23
|
|
Revert "Vulkan: Implement debug markers"
This reverts commit 983e446921946734fe47217c345a8fe2f079319d.
Reason for revert: Depends on a CL that's reverted: https://chromium-review.googlesource.com/c/angle/angle/+/1470605
Original change's description:
> Vulkan: Implement debug markers
>
> Covers both GL_KHR_debug and GL_EXT_debug_marker.
>
> Debug markers are used to specify events or hierarchically categorize a
> set of commands within the command buffer. When debugging, this allows
> for quicker navigation to the draw calls of interest, and otherwise
> provides context to debug output.
>
> Bug: angleproject:2853
> Change-Id: Id65e11fc877d9e70b6fd0fae7f0bbbcb1164bf10
> Reviewed-on: https://chromium-review.googlesource.com/c/1403956
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,jmadill@chromium.org,syoussefi@chromium.org
Change-Id: I7fcfc8683195d396aec61848719f52c0fa049ece
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2853
Reviewed-on: https://chromium-review.googlesource.com/c/1470606
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3805122b
|
2019-02-13T21:21:13
|
|
Revert "Roll Vulkan repos"
This reverts commit 55ea947c3bdd6c0ef68fc4b9ddbda26889f62622.
Reason for revert: Seems to be causing a memory corruption on Windows/Intel bots.
Original change's description:
> Roll Vulkan repos
>
> Bug: angleproject:3095
> Change-Id: I6ae9d61304981223f9e2f1869ed32612aa38952c
> Reviewed-on: https://chromium-review.googlesource.com/c/1405714
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
TBR=ynovikov@chromium.org,jmadill@chromium.org,syoussefi@chromium.org
Change-Id: I61879770c9bb16ac2231b081bda08e6211ba6831
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3095
Reviewed-on: https://chromium-review.googlesource.com/c/1470605
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6fc22a13
|
2019-02-01T12:53:01
|
|
Vulkan: Discard scissored clears where scissor is null
If a clear becomes a no-op because the scissor has a width and height
of 0, return early and skip the draw.
This also works around a driver issue on some devices where it was
ignoring a null scissor and drawing the clear anyway. Found with deqp
test:
adb shell am start -n com.drawelements.deqp/android.app.NativeActivity \
-e cmdLine '"deqp --deqp-case=dEQP-GLES2.functional.color_clear.* \
--deqp-log-filename=/sdcard/dEQP-Log.qpa"'
run_angle_end2end_tests --gtest_filter=ClearTest.EmptyScissor/ES2_VULKAN
Bug: angleproject:3114
Change-Id: I6cf2716bd93bb332f74b44c7250e363c68cc614f
Reviewed-on: https://chromium-review.googlesource.com/c/1436841
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
983e4469
|
2019-01-18T16:04:50
|
|
Vulkan: Implement debug markers
Covers both GL_KHR_debug and GL_EXT_debug_marker.
Debug markers are used to specify events or hierarchically categorize a
set of commands within the command buffer. When debugging, this allows
for quicker navigation to the draw calls of interest, and otherwise
provides context to debug output.
Bug: angleproject:2853
Change-Id: Id65e11fc877d9e70b6fd0fae7f0bbbcb1164bf10
Reviewed-on: https://chromium-review.googlesource.com/c/1403956
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
55ea947c
|
2019-01-10T14:25:29
|
|
Roll Vulkan repos
Bug: angleproject:3095
Change-Id: I6ae9d61304981223f9e2f1869ed32612aa38952c
Reviewed-on: https://chromium-review.googlesource.com/c/1405714
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
d8506c7e
|
2019-01-29T15:35:09
|
|
Disable broken tests on Fuchsia (reland)
This disables tests that do not work on Fuchsia. Most of them are related
to cube maps which currently crash inside the intel driver.
Reland disabling -Wextra-semi.
BUG=angleproject:2475, angleproject:3145, angleproject:3081
TEST=angle_end2end_tests on Fuchsia
Change-Id: I65ad84f43c88e8ee83c581cc2f41046d00bbae7f
Reviewed-on: https://chromium-review.googlesource.com/c/1467604
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Michael Spang <spang@chromium.org>
|
|
229fc83d
|
2019-01-21T18:09:15
|
|
Vulkan: Port renderer to Fuchsia (reland)
Add DisplayVk and WindowSurfaceVk subclasses for Fuchsia to the vulkan
renderer, as well as an implementation of OSWindow that renders
fullscreen for the test suite.
Disallow use of the vulkan loader from third_party as Fuchsia uses a fork
of the loader and has not sent those changes upstream yet.
Add a small wayland-inspired library libfuchsia-egl to provide a type
"struct fuchsia_egl_window" to use as EGLNativeWindowType. This type
combines a zx_handle_t to an image pipe channel and a surface size.
Image pipes can only be used once to create a VkSurfaceKHR. This means we
have to recreate the pipe in tests that call eglCreateWindowSurface more
than once with a single OSWindow, or the second call will fail. Add a
resetNativeWindow() method to accomplish this.
Reland disabling -Wextra-semi.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia
Change-Id: Ie91715bcd760c6c04d4b8a02a91daa71e32ee30c
Reviewed-on: https://chromium-review.googlesource.com/c/1467603
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
eca36cb5
|
2019-01-18T14:03:52
|
|
Vulkan: Support EGL images sourced from cube maps.
Store an image array offset and source texture type in ImageVk to select the
correct cube face from the source texture.
BUG=angleproject:2668
Change-Id: I03ad25feccb769c906dd28fb573ec342e7816863
Reviewed-on: https://chromium-review.googlesource.com/c/1422542
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
341304d8
|
2019-02-12T20:58:54
|
|
Revert "Vulkan: support instanced draws."
This reverts commit 199a9f385f5489b957fe1e42bf08f3f40edd38ca.
Reason for revert: Causes a validation error when the extension is not present. See failures here: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win-angle-rel/693
Original change's description:
> Vulkan: support instanced draws.
>
> Enable instanced draws with the Vulkan backend.
> So far it only works when Vulkan has VK_EXT_vertex_attribute_divisor.
>
> BUG=angleproject:2672
>
> Change-Id: I9445ba64282fa00a6eaee207b15efa2c7a9abbd3
> Reviewed-on: https://chromium-review.googlesource.com/c/1334973
> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
TBR=fjhenigman@chromium.org,jmadill@chromium.org,syoussefi@chromium.org
Change-Id: Iffccc2cca259bcd19c068a87a415d4e196901f45
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2672
Reviewed-on: https://chromium-review.googlesource.com/c/1468201
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d3fac74a
|
2019-02-12T13:40:28
|
|
Disable warnings-as-error in GLSLTest.
This disables the warnings in the FragData test. We were
getting errors in Debug from the multithreading compile
implementation.
Bug: chromium:931294
Change-Id: I6d1424e54335534f794884e40f527b5464113084
Reviewed-on: https://chromium-review.googlesource.com/c/1465960
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8edc68e3
|
2019-02-12T12:41:01
|
|
Vulkan: Require Android NDK API level 26, dropping Android N support.
Due to Vulkan Validation Layers breaking Android N backward compatibility.
See http://crrev/c/1405714
and https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/623
Bug: angleproject:3095
Change-Id: I5da306c567cd9a0088149ca9929b38c8ed2cc86a
Reviewed-on: https://chromium-review.googlesource.com/c/1465954
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
4a298703
|
2019-01-18T10:49:36
|
|
Vulkan: Support creating EGL images from non-zero mipmaps of textures.
Store a mip offset in TextureVK to apply to all operations on the ImageHelper.
There is no need to store the mip offset in RenderbufferVk because it creates
the resource with the mip offset on the call to setStorageEGLImageTarget.
Store a mipmap level in the RenderTargetVk object so that clear operations
will target the correct mipmap of the image.
BUG=angleproject:2668
Change-Id: Ie976e3dd3a8de8135a7fbb8c84bd51eec0dddce8
Reviewed-on: https://chromium-review.googlesource.com/c/1422059
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
199a9f38
|
2018-11-13T17:22:36
|
|
Vulkan: support instanced draws.
Enable instanced draws with the Vulkan backend.
So far it only works when Vulkan has VK_EXT_vertex_attribute_divisor.
BUG=angleproject:2672
Change-Id: I9445ba64282fa00a6eaee207b15efa2c7a9abbd3
Reviewed-on: https://chromium-review.googlesource.com/c/1334973
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
15335ac4
|
2019-02-12T12:11:11
|
|
Add fuchsia_x64 to commit-queue.cfg.
Also remove cq.cfg since it is no longer used.
Bug: angleproject:3146
Change-Id: I3c247016e3553a1492072b7c48e2e22ff25578e9
Reviewed-on: https://chromium-review.googlesource.com/c/1465951
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c105ddc6
|
2019-02-12T10:22:29
|
|
Add fuchsia_x64 to CQ.
Bug: angleproject:3146
Change-Id: Iae0ec05ee7c26b5401225fd929b84c303a61ae40
Reviewed-on: https://chromium-review.googlesource.com/c/1465948
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
356d26c2
|
2019-02-11T11:27:01
|
|
Vulkan: Create/use a constant for the highest Vulkan version used.
Bug: angleproject:3036
Change-Id: Ica056743eed2aa08e96b8a85e693ae70355b52d5
Reviewed-on: https://chromium-review.googlesource.com/c/1464739
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
18b05950
|
2019-02-11T11:41:06
|
|
Suppress EGLSurfaceTest.SwapInterval on android shield tv
Bug: 930723,angleproject:3144
Change-Id: Ib5524607ce072c8a37836d56fe5654284443fb49
Reviewed-on: https://chromium-review.googlesource.com/c/1464080
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
c66fb571
|
2019-02-12T03:56:16
|
|
Revert "Disable broken tests on Fuchsia"
This reverts commit ad194995ed7228078d5b937dd1eff87c1dcac9c0.
Reason for revert: broke GPU optional bots since the revert of its previous CL
Original change's description:
> Disable broken tests on Fuchsia
>
> This disables tests that do not work on Fuchsia. Most of them are related
> to cube maps which currently crash inside the intel driver.
>
> BUG=angleproject:2475, angleproject:3145, angleproject:3081
> TEST=angle_end2end_tests on Fuchsia
>
> Change-Id: Ifc0be390c6d5c43a756e1afb6ced9e3bd5b6986e
> Reviewed-on: https://chromium-review.googlesource.com/c/1446497
> Commit-Queue: Michael Spang <spang@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=spang@chromium.org,geofflang@chromium.org,jmadill@chromium.org
Change-Id: Id1861ee94b89020bcd64dd8e7e52588b76830783
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2475, angleproject:3145, angleproject:3081
Reviewed-on: https://chromium-review.googlesource.com/c/1465881
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
3f0ff409
|
2019-02-12T03:08:51
|
|
Revert "Vulkan: Port renderer to Fuchsia"
This reverts commit 991d1cfb5e5a2f20a46961da3ad85b95da30b88a.
Reason for revert: Failing compile on the fuchsia bots on the ANGLE
auto-roller.
https://ci.chromium.org/p/chromium/builders/luci.chromium.try/fuchsia_x64/209198
In file included from ../../third_party/angle/util/fuchsia/ScenicWindow.cpp:10:
In file included from ../../third_party/angle/util/fuchsia/ScenicWindow.h:13:
In file included from gen/third_party/fuchsia-sdk/sdk/fidl/fuchsia/ui/policy/cpp/fidl.h:5:
In file included from ../../third_party/fuchsia-sdk/sdk/pkg/fidl_cpp/include/lib/fidl/cpp/internal/header.h:12:
../../third_party/fuchsia-sdk/sdk/pkg/fit/include/lib/fit/function.h:135:6: error: extra ';' after member function definition [-Werror,-Wextra-semi]
};
^
1 error generated.
Original change's description:
> Vulkan: Port renderer to Fuchsia
>
> Add DisplayVk and WindowSurfaceVk subclasses for Fuchsia to the vulkan
> renderer, as well as an implementation of OSWindow that renders
> fullscreen for the test suite.
>
> Disallow use of the vulkan loader from third_party as Fuchsia uses a fork
> of the loader and has not sent those changes upstream yet.
>
> Add a small wayland-inspired library libfuchsia-egl to provide a type
> "struct fuchsia_egl_window" to use as EGLNativeWindowType. This type
> combines a zx_handle_t to an image pipe channel and a surface size.
>
> Image pipes can only be used once to create a VkSurfaceKHR. This means we
> have to recreate the pipe in tests that call eglCreateWindowSurface more
> than once with a single OSWindow, or the second call will fail. Add a
> resetNativeWindow() method to accomplish this.
>
> BUG=angleproject:2475
> TEST=angle_end2end_tests on Fuchsia
>
> Change-Id: I71a613a362dd1c8aada49a3c02ae461e064457bf
> Reviewed-on: https://chromium-review.googlesource.com/c/1446496
> Commit-Queue: Michael Spang <spang@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
TBR=spang@chromium.org,geofflang@chromium.org,jmadill@chromium.org,syoussefi@chromium.org
Change-Id: I2d9abefa9db5363ba63a17c1773d0e147040d055
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2475
Reviewed-on: https://chromium-review.googlesource.com/c/1465761
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ad194995
|
2019-01-29T15:35:09
|
|
Disable broken tests on Fuchsia
This disables tests that do not work on Fuchsia. Most of them are related
to cube maps which currently crash inside the intel driver.
BUG=angleproject:2475, angleproject:3145, angleproject:3081
TEST=angle_end2end_tests on Fuchsia
Change-Id: Ifc0be390c6d5c43a756e1afb6ced9e3bd5b6986e
Reviewed-on: https://chromium-review.googlesource.com/c/1446497
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
991d1cfb
|
2019-01-21T18:09:15
|
|
Vulkan: Port renderer to Fuchsia
Add DisplayVk and WindowSurfaceVk subclasses for Fuchsia to the vulkan
renderer, as well as an implementation of OSWindow that renders
fullscreen for the test suite.
Disallow use of the vulkan loader from third_party as Fuchsia uses a fork
of the loader and has not sent those changes upstream yet.
Add a small wayland-inspired library libfuchsia-egl to provide a type
"struct fuchsia_egl_window" to use as EGLNativeWindowType. This type
combines a zx_handle_t to an image pipe channel and a surface size.
Image pipes can only be used once to create a VkSurfaceKHR. This means we
have to recreate the pipe in tests that call eglCreateWindowSurface more
than once with a single OSWindow, or the second call will fail. Add a
resetNativeWindow() method to accomplish this.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia
Change-Id: I71a613a362dd1c8aada49a3c02ae461e064457bf
Reviewed-on: https://chromium-review.googlesource.com/c/1446496
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6b695c3f
|
2019-02-10T10:02:33
|
|
Vulkan: Enable WebGLCompatiblityTest.
Contains several useful tests including some that cover bugs with
compressed texture support. And some uses of CopyTexImage.
Bug: angleproject:2904
Bug: angleproject:2914
Change-Id: I90398ce2c513ace07cb9d414cd9a65c79e63aadb
Reviewed-on: https://chromium-review.googlesource.com/c/1462058
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
00f43c91
|
2019-02-09T11:41:12
|
|
Vulkan: Suppress layer warnings about unbound outputs.
This warning could pop up whenever an OpenGL app would write
to a particular output and not bind an attachment. This is
valid in OpenGL. Also it could happen when writing to
gl_FragData instead of gl_FragColor. Since it's hard to fix
every usage we can just suppress the warning.
Also adds a way to change test platform warnings into errors.
Bug: angleproject:2866
Change-Id: I9793f58121ac848d74d6b0131e79ebab2c70f45c
Reviewed-on: https://chromium-review.googlesource.com/c/1462057
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
54ed8f0a
|
2019-02-11T12:32:04
|
|
Vulkan: Fix UtilsVk invalidating Context descriptors.
Fixes a validation error and rendering artifact in the WebGL test:
textures/misc/tex-image-and-sub-image-2d-with-array-buffer-view
Only applies to masked clears when combined with draw calls using
uniforms or textures.
Also make it easier to inspect layer messages in the debugger.
Bug: angleproject:2912
Change-Id: I4561895439221581b9dbc341d6de5d5a6c2096aa
Reviewed-on: https://chromium-review.googlesource.com/c/1462056
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3571ad49
|
2019-02-06T12:24:19
|
|
Vulkan:Adding Cmd Buffer Reset tests
Resetting cmd buffers in various ways to understand VK driver perf on
various devices.
Also includes some changes to get the chromium APK wrapper for
angle_white_box_perftests compiling.
Bug: angleproject:3137
Change-Id: I56bd163cdd6605ce09effe509a9c7ac5e0008e7a
Reviewed-on: https://chromium-review.googlesource.com/c/1456482
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0a87f08d
|
2019-02-11T11:19:17
|
|
Vulkan: make GenerateCaps a member of RendererVk.
Instead of passing lots of RendererVk member variables into
GenerateCaps(), do the work in a member function.
BUG=angleproject:2672
Change-Id: Icf16f3388174ddb676272ec0fa76a288ce2d1e4e
Reviewed-on: https://chromium-review.googlesource.com/c/1463959
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
0029dfe2
|
2019-02-08T18:45:07
|
|
Vulkan: Respect EGL_HEIGHT & EGL_WIDTH in SurfaceVk
If currentExtent is unspecified and EGL_WIDTH & EGL_HEIGHT are provided,
we'll use a surface size of 0xFFFFFFFF. That's not going to work and
appears to be a typo. Use the size specified in EGL_WIDTH & EGL_HEIGHT
instead.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia with an earlier version of
CL 1446496 PS12. It is N/A with later patches.
Change-Id: I7e67b2c796318bed512dd6d5d22ef2183916416d
Reviewed-on: https://chromium-review.googlesource.com/c/1461637
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
fe59f6b5
|
2019-01-16T09:34:30
|
|
Vulkan: Implement EGL Images for 2D and Renderbuffer sources.
No support for non-zero mipmaps as sources yet.
Suppress dEQP tests due to apparent driver bugs with scissored clears on depth
or stencil attachments.
BUG=angleproject:2668
Change-Id: Idaa5e70ce9b0c91232fbb989cbf4de1b9134aafb
Reviewed-on: https://chromium-review.googlesource.com/c/1415010
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
abf6dbbb
|
2019-02-08T13:24:10
|
|
Disable MultithreadingTest on Vulkan
This test applies to the OpenGL ES renderer only. Vulkan-only builds fail
this tests because EGL_ANGLE_platform_angle_context_virtualization isn't
provided.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia
Change-Id: I4668d88a43a707cf385c78a0582a81cfd722ec90
Reviewed-on: https://chromium-review.googlesource.com/c/1461636
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
75d577fb
|
2019-02-04T16:28:28
|
|
Fixed Bug where array initialized with same name of
previously declared variable fails on DirectX.
Combined user defined variables with their unique ids to avoid
overwriting same name variables of different scope.
Bug: angleproject:2126
Change-Id: If9ad9e48f629d83b105d43ee28a50b8176d0e0a1
Reviewed-on: https://chromium-review.googlesource.com/c/1456484
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
|
|
238c19e1
|
2019-02-07T09:09:41
|
|
Add fuzzer for xxHash.
Local testing did not turn up any crashes.
Bug: angleproject:2983
Change-Id: I5e87ed0768e5bc4454c1a896f96d09ddd92baf44
Reviewed-on: https://chromium-review.googlesource.com/c/1458656
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
38833111
|
2019-02-06T16:19:49
|
|
Vulkan: implement eglSwapInterval
Uses FIFO with interval 1 and mailbox/immediate with interval 0 (with a
fallback to FIFO). An end2end test is added to make sure the present
mode is correctly set.
Bug: angleproject:2932
Change-Id: I45d2b1e551b5c63c42ca3c8964bd5e62abd2d459
Reviewed-on: https://chromium-review.googlesource.com/c/1456622
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3e01a518
|
2019-02-08T15:53:29
|
|
Make .gni files always use LF endings.
This saves a lot of spam about dirty git formatting when changing
.gni files.
Bug: angleproject:3139
Change-Id: I244d5254ac6bd7bd1a7bedac5c34bd141fe0b9c0
Reviewed-on: https://chromium-review.googlesource.com/c/1460611
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2b0553ce
|
2019-02-08T10:07:21
|
|
Implement EXT_instanced_arrays
Bug: angleproject:3015
Change-Id: Ib01cc5e0df6db27981cb843a6bd386de5d10c2db
Reviewed-on: https://chromium-review.googlesource.com/c/1452740
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d058774b
|
2019-02-08T13:32:10
|
|
Refine Ozone suppression.
It's possible that IsOpenGLES doesn't work SurfaceTest. Also there was a
second failing test that should be skipped.
Bug: angleproject:3138
Change-Id: I5950819c343ce1413f4617c4c410aaba42b5a268
Reviewed-on: https://chromium-review.googlesource.com/c/1459602
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f256339a
|
2019-01-15T09:50:44
|
|
Vulkan: Implement eglBindTexImage
Now that vk::ImageHelper is stored as a pointer, it can be shared between an
offscreen surface and texture.
BUG=angleproject:3073
Change-Id: I91e520259106eef497950b8b2e622fbf910f7444
Reviewed-on: https://chromium-review.googlesource.com/c/1412234
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
82e12fd6
|
2019-02-08T12:10:36
|
|
Use github link to SVG example image in docs.
It seems like there isn't a way to reference a local SVG in gitiles.
We'd need to upload the image to cloud storage. Instead we can use
the image in the repo if we link to the github version.
Bug: angleproject:3002
Change-Id: Ib1879d562e83ae16f531b204ca86cb73d45c5bb8
Reviewed-on: https://chromium-review.googlesource.com/c/1459600
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4103ceac
|
2019-02-08T09:52:01
|
|
Fix link to example in Dirty Bits docs.
Bug: angleproject:3002
Change-Id: Ice785dc13b62879b4ec74ec8374d16eb88c5b257
Reviewed-on: https://chromium-review.googlesource.com/c/1459598
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
df3372b9
|
2019-02-07T15:46:29
|
|
Add markdown documentation for dirty bits.
Bug: angleproject:3002
Change-Id: I35df4e9f2af909f175402ce96773afb885bce595
Reviewed-on: https://chromium-review.googlesource.com/c/1455536
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
e03498f2
|
2018-11-22T21:27:29
|
|
Increase instanced draw testing.
Fill some gaps in the ANGLE end2end instanced draw test.
The only testing of points was on D3D11 and D3D11_FL9_3.
There was little testing of number of instances and different divisors.
Remove old one-off tests which are now redundant.
Disable the D3D11_FL9_3 points test which was passing purely by chance.
That code has bugs and only supports data from a buffer, while the
test uses data in client memory.
BUG=angleproject:2672
Change-Id: I5b5707a6fdd0960e81c25a2eb8ed96a1452d9868
Reviewed-on: https://chromium-review.googlesource.com/c/1450789
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cd4f1fba
|
2019-02-07T15:26:10
|
|
Fix gtest main from including the wrong headers.
We would accidentally propagate include directories to the test
main target. This would show up as compile errors of the form:
In file included from ../../third_party/angle/testing/gtest/include/gtest/gtest.h:10:
../../third_party/angle/third_party/googletest/src/googletest/include/gtest/gtest.h:303:22: error: no member named 'ImplicitlyConvertible' in namespace 'testing::internal'
!internal::ImplicitlyConvertible<T, AssertionResult>::value>::type*
~~~~~~~~~~^
This fixes the GN properties such that we no longer get the wrong
/testing/ and /third_party/googletest/ directories included. This
regressed when glslang was rolled.
Bug: angleproject:3088
Change-Id: I710f767cfe476454c10dacf2103b9203f1b5ee19
Reviewed-on: https://chromium-review.googlesource.com/c/1459596
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2c94c1e3
|
2019-02-07T17:10:32
|
|
Suppress EGLSurfaceTest.MessageLoopBugContext on Ozone.
Bug: angleproject:3138
Change-Id: If82467a0ab98d2b2f77337be41b33ee817e44e58
Reviewed-on: https://chromium-review.googlesource.com/c/1459597
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6c13c70c
|
2019-02-06T15:59:44
|
|
Vulkan: Enumerate instance & device extensions provided by layers
Add instance & device extensions provided by layers prior to running
VerifyExtensionsPresent() so that we won't abort when required extensions
are provided in a layer. This happens particularly on Fuchsia as the
swapchain extension is implemented in a layer.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia
Change-Id: I30385dfe55b14783a20d1410f1209d3e3ad10632
Reviewed-on: https://chromium-review.googlesource.com/c/1456487
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
a07c9bf7
|
2019-02-07T19:10:15
|
|
Revert "Vulkan: Reduce Default Descriptor Pool Max Sets"
This reverts commit 1f8132a1da6e3752c08c5a2b1840e4d6fa44a52f.
Reason for revert: anglebug.com/3135
Bug: angleproject:3135
Original change's description:
> Vulkan: Reduce Default Descriptor Pool Max Sets
>
> The current value of kDefaultDescriptorPoolMaxSets is 2048, which
> allocates too much memory on a Pixel device, causing Android's low
> memory killer to terminate dEQP (leading to a test failure). This change
> reduces the value of kDefaultDescriptorPoolMaxSets to 128 to reduce the
> memory usage during the test. We suspect a later change may be required
> to dynamically grow the descriptor pools and update the recycling
> behavior.
>
> dEQP-EGL.functional.multicontext.non_shared_clear
>
> Bug: angleproject:3056
> Change-Id: I8a681b509823956a58d6c08f64a23203458e075e
> Reviewed-on: https://chromium-review.googlesource.com/c/1454280
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Tim Van Patten <timvp@google.com>
TBR=jmadill@chromium.org,timvp@google.com,syoussefi@google.com,syoussefi@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: angleproject:3056
Change-Id: Iff950425141eb5028c3660ba0567a9d29e691604
Reviewed-on: https://chromium-review.googlesource.com/c/1459256
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
ab5acbd5
|
2019-01-23T13:58:09
|
|
Vulkan: implement swapchain resizing
Vulkan allows a swapchain to be created based off of an older swapchain
that's still presenting, to support seamless window resizing. The old
swapchain will remain alive (though no image can be acquired from it)
and automatically cleaned once no image is being presented from it.
The retired swapchain can be destroyed once all operations on its images
are completed. We store the old swapchain next to the serial of
submission that's used for CPU throttling and defer the destroy call
until after `finishToSerial` for that serial is called.
Bug: angleproject:2942
Change-Id: Ic62a5a57b712ffa2b087f5fecde0dc8942194075
Reviewed-on: https://chromium-review.googlesource.com/c/1435634
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
088e5217
|
2019-02-06T17:07:57
|
|
Vulkan: Suppress flaky test on Nexus5X
Bug: angleproject:3124
Change-Id: Idfcd84f92126eb7548f86f8c327887a34e3218a9
Reviewed-on: https://chromium-review.googlesource.com/c/1457025
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
603ad164
|
2018-12-04T07:34:23
|
|
GLES1: dirty bit pass
This CL introduces a coarse layer of dirty bits and on-demand sending of
some uniforms to the underlying driver, instead of sending all uniforms
every draw, which should improve performance in cases where not much is
changing between draws.
BUG=angleproject:2306
Change-Id: I530515dfad2e4be74c73d8659acd4fe5decaa8b0
Reviewed-on: https://chromium-review.googlesource.com/c/1361222
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Lingfeng Yang <lfy@google.com>
|
|
f9cc785c
|
2019-02-06T07:59:45
|
|
Docs: Add glmark2 instructions for Android
Bug: angleproject:3125
Change-Id: I0d185ad70b960d0c3bff971eb6658893b308352d
Reviewed-on: https://chromium-review.googlesource.com/c/1456481
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
35218632
|
2019-02-06T13:05:21
|
|
Vulkan: Move vulkan config target to $angle_root:vulkan_config
This will allow us to avoid loading the build file for
//third_party/vulkan-validation-layers on Fuchsia, since we don't want to
build the validation layers on that platform.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia (with full series)
Change-Id: Ifeb67125f5fcebf2b30ae18b760667ba7c56e4d5
Reviewed-on: https://chromium-review.googlesource.com/c/1456479
Commit-Queue: Michael Spang <spang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
36433590
|
2019-02-06T10:45:44
|
|
Fix ShCompileTest.DecimalSepLocale failing on Linux/AMD
Bug: angleproject:3132
Change-Id: I4bbaaab732cd64e6f2f44d6a09a236533a1abc20
Reviewed-on: https://chromium-review.googlesource.com/c/1456616
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
740db7fd
|
2019-02-06T09:40:13
|
|
Vulkan: Add support for loading layers from DisplayVk
Fuchsia needs a layer to support VK_KHR_swapchain. Add the ability for
DisplayVk subclasses to request a layer in addition to an extension.
BUG=angleproject:2475
TEST=angle_end2end_tests on Fuchsia
Change-Id: If86c773d4bd4ebecaee4b1631d3d4975105fe849
Reviewed-on: https://chromium-review.googlesource.com/c/1456478
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
eb47e2c4
|
2019-02-05T16:26:41
|
|
Vulkan: improve calculation of swapchain image count
Based on present mode, different values for the image count make sense.
In mailbox mode, the driver will increase the number as necessary. In
immediate mode, two buffers suffice. In fifo mode, we would ideally
want triple-buffering.
Bug: angleproject:2932
Change-Id: I45eec83d0292eea472b931fe81e49cde6d105c27
Reviewed-on: https://chromium-review.googlesource.com/c/1454290
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
bf5dbd8d
|
2019-02-05T16:41:41
|
|
Skip WhitelistMatchesSupport test on Android.
Seems to have issues with stranger configs like the Sheild TV.
Bug: angleproject:2286
Change-Id: I12d0dedeee9fbaaecb7341d376200a1afc758f12
Reviewed-on: https://chromium-review.googlesource.com/c/1454331
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5f662c00
|
2019-01-31T13:53:59
|
|
Fix unit test for setting locale creating malformed HLSL shader code
Fix malformed HLSL shader code in other locales than classic
Bug: angleproject:1433
Change-Id: I30bad0bd0cfda465ec7200e48e12800d7d8efd26
Reviewed-on: https://chromium-review.googlesource.com/c/1447862
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
1f8132a1
|
2019-02-05T10:20:24
|
|
Vulkan: Reduce Default Descriptor Pool Max Sets
The current value of kDefaultDescriptorPoolMaxSets is 2048, which
allocates too much memory on a Pixel device, causing Android's low
memory killer to terminate dEQP (leading to a test failure). This change
reduces the value of kDefaultDescriptorPoolMaxSets to 128 to reduce the
memory usage during the test. We suspect a later change may be required
to dynamically grow the descriptor pools and update the recycling
behavior.
dEQP-EGL.functional.multicontext.non_shared_clear
Bug: angleproject:3056
Change-Id: I8a681b509823956a58d6c08f64a23203458e075e
Reviewed-on: https://chromium-review.googlesource.com/c/1454280
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
4a41914b
|
2019-02-05T08:50:30
|
|
Vulkan: Add trace markers
Add systrace markers for various RendererVk::finish paths in order to
quickly identify cause of finishes. Also added marker to commandPool
destroy which is currently a known hotspot on some devices.
Bug: angleproject:2528
Change-Id: I5a2fc741679a58445d71a2edd6204cf9e869d236
Reviewed-on: https://chromium-review.googlesource.com/c/1454277
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e1a763d1
|
2019-01-25T15:43:33
|
|
Vulkan: Implement basic barrier perf test
There's a lot more that can go into this perf test, but it requires
further work on the Vulkan back end.
Bug: angleproject:2999
Change-Id: Iea62bfd09639af108674dcf0a9e7c9d36ccddcef
Reviewed-on: https://chromium-review.googlesource.com/c/1437734
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
e923a63e
|
2019-02-05T08:32:33
|
|
Move ozone detection earlier in white list.
Apparently IsOzone and IsLinux can both be true at the same time. This was
confounding the config detection.
Bug: angleproject:2286
Bug: chromium:928583
Change-Id: Ifd28242f396fd97447720b0c11caf8c1590f7222
Reviewed-on: https://chromium-review.googlesource.com/c/1454319
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d01c504e
|
2019-02-04T21:52:09
|
|
Fix issues with config whitelisting.
The Android Shield TV confing was not properly initializing on ES1/Vulkan.
Also Ozone configs were failing to initialize ES 3.0 contexts.
Bug: angleproject:2286
Bug: chromium:928583
Change-Id: I7e54cdd1bf29791dffee3c70f7ebd3a1283eb5c4
Reviewed-on: https://chromium-review.googlesource.com/c/1453480
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9bb59c5c
|
2019-01-25T11:46:24
|
|
Do not call eglMakeCurrent with invalid parameters
When releasing the thread only call makeCurrent if we have a display
to use. Calling with EGL_NO_DISPLAY is not valid (though some devices
allow it.)
Bug: angleproject:3102
Change-Id: I2cf48011294d0264d3b1cb0318a2a80715e37f60
Reviewed-on: https://chromium-review.googlesource.com/c/1436840
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
7085305f
|
2019-02-04T17:47:04
|
|
Use whitelist to filter test configs.
Before we would try all the configs and filter those which fail to
init. Now we gather the System Info and if successful check a list of
supported configs. If System Info init fails we fall back to the prior
method.
This speeds up end2end tests init. It also allows for more reliable
profile captures with VTune. It also will cause a test failure if a
config unexpectedly fails. Previously we would silently pass without
running the config's test. Includes a few changes:
* D3D reference tests are disabled. They don't appear to be working.
* Mac ES 3.1 is disabled due to lack of support.
* WGL on AMD Windows is disabled due to lack of ES compatibility.
* ES 3.2 contexts are explicitly disabled.
* Vulkan is limited to ES 2.0.
* The Windows GLES back-end is limited to NVIDIA with ES 2.0 & 3.0.
* A unit test that verifies the whitelist matches availability.
Bug: angleproject:2472
Change-Id: Ib72214bfbbff13c124fa15a6494d0aabb52f2e62
Reviewed-on: https://chromium-review.googlesource.com/c/1436168
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
7dafe3eb
|
2019-01-28T11:39:15
|
|
Vulkan: optimize image memory barriers
Each image was tracking its current layout, but not the pipeline stage
it was used. Additionally, the barrier access masks were inferred from
the layout. This incurred two inefficiencies:
- The src pipeline stage mask often included all stages, causing
unnecessarily heavy barriers.
- The access masks included all possible accesses by a layout, which in
some cases was overkill, like VK_ACCESS_MEMORY_WRITE_BIT for
VK_IMAGE_LAYOUT_GENERAL (which will eventually used for compute shader
output).
This change instead creates an enum where each element represents the
layout, the stage and access masks when transitioning into the layout
and the stage and access masks when transitioning out of that layout.
The image will instead track a value of this enum (instead of
VkImageLayout), which allows it to create the layout transition barriers
as tight as possible, since it includes all the necessary information.
Bug: angleproject:2999
Change-Id: I91535ce06d10530a6fc217ad3b94b7e288521e25
Reviewed-on: https://chromium-review.googlesource.com/c/1440074
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f3e823db
|
2019-01-14T12:40:34
|
|
Vulkan: Store ImageHelper as a pointer in TextureVk and RenderbufferVk
Storing ImageHelper as a pointer allows the storage to be swapped or shared
with other objects.
BUG=angleproject:2668
Change-Id: I2e51f24737be59ffe9f472e9b0b592774a792cd1
Reviewed-on: https://chromium-review.googlesource.com/c/1409404
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
eb67ca6e
|
2019-02-04T11:18:54
|
|
Improve EGLRecordableTest
The initial implementation called eglInitialize() and eglTerminate()
and didn't call ANGLETest::TearDown().
BUG=angleproject:2511
Change-Id: I563a84a72fe9bd20739519301023062f85446557
Reviewed-on: https://chromium-review.googlesource.com/c/1452529
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
08f8fa66
|
2019-01-10T14:25:47
|
|
Vulkan: Merge the PixelBuffer logic into ImageHelper.
To support EGL images efficiently, the pixel buffer needs to be tightly coupled
with the image it will upload data to allowing textures to upload data to EGL
images sourced from renderbuffers. The data will be uploaded to the image in
the correct order if it comes from multiple sources and the check for pending
uploads does not need to traverse EGL image siblings.
BUG=angleproject:2668
Change-Id: Iebf59ed1e358ddc76843b8bcfac39b0363f66a3f
Reviewed-on: https://chromium-review.googlesource.com/c/1405710
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9544002e
|
2019-02-01T16:36:09
|
|
Add instructions on how to run glmark2+ANGLE on Linux
Bug: angleproject:3125
Change-Id: I70d295d7ec1dbafc74add068165c5fbcadb48560
Reviewed-on: https://chromium-review.googlesource.com/c/1450222
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d94af173
|
2019-02-01T15:55:50
|
|
Vulkan: Store xcb visual id/type in egl::Config
glmark2 uses the visual id, which is discarded in angle. This change
retrieves these ids from X11 and stores them in the egl::Config.
Bug: angleproject:3125
Change-Id: I2b524ecb71d675efa01cc9100a3dfe6fd57913f0
Reviewed-on: https://chromium-review.googlesource.com/c/1450221
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
52d861bd
|
2019-02-02T00:30:58
|
|
Disable -Wextra-semi-stmt
Due to bot build failures. Partially reverts:
c09ae15c0: Enable -Wextra-semi and -Wextra-semi-stmt.
TBR=jmadill@chromium.org
Bug: angleproject:3128
Change-Id: Ia3725e57d28cd899db59e1d8e760ad8ca3d5f70c
Reviewed-on: https://chromium-review.googlesource.com/c/1450659
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3d6e3004
|
2019-02-01T15:43:59
|
|
Implement EGL_ANDROID_recordable for Vulkan back-end.
This initial implementation provides the extension, and always answers
that the ANativeWindow is not recordable.
BUG=angleproject:2511
Change-Id: Id3c57351dd1029bff7adf7166f9c82eee6e634b3
Reviewed-on: https://chromium-review.googlesource.com/c/1412507
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|