|
da6d12d0
|
2020-02-27T14:20:32
|
|
Fix out-of-bounds read in test.
The test wasn't reserving a large enough buffer when initializing
the vertex data. Fix the test buffer limits.
Bug: angleproject:4430
Change-Id: I4b9a98e1af1cc8088afb871816061d7ee4dd6a2c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2079153
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4d2040a6
|
2020-02-27T09:59:11
|
|
Make GLSLTest_ES31.MixOfAllResources more lenient.
Lower precision in Vulkan caused off-by-one issues with this test.
BUG=angleproject:4438
Change-Id: I17111a06133ef403be1f0c99321f1dbf8ab6083c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2078791
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
cb7f5f4a
|
2020-02-26T16:59:01
|
|
Vulkan: Updated expectations after SwS fixed 4259
Bug: angleproject:4259
Change-Id: I518db27a1fb50d35f2c784f655d3e7ee40f4bdf2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2076415
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
93e72f5f
|
2020-02-25T12:02:31
|
|
Vulkan:Include precision qualifier in GLSL
With this initial implementation, it's possible to get precision
qualifier mis-matches in the generated GLSL 4.50. According to the
spec this is allowed. From GLSLangSpec 4.50 section 4.7 "Precision and
Precision Qualifiers":
For the purposes of determining if an output from one shader stage
matches an input of the next stage, the precision qualifier need not
match.
However, when converted to SPIR-V and run through the shader validation
any mismatches will cause shader validation errors. Initially just
ignoring those errors with this commit.
Bug: angleproject:3078
Change-Id: Ia2b04f90f0a7b6b1302c1b1b3e32bcfd8db9ed49
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2057749
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
b9b4569b
|
2020-02-25T15:01:21
|
|
Save binding information when caching shader
Test: KHR-GLES31.core.layout_binding.sampler2D_layout_binding_texture_FragmentShader
Bug: angleproject:4106
Bug: angleproject:3089
Change-Id: Ia92ee172ae574e50bf1759583e46ffb54f348962
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2072871
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
660c0dd6
|
2020-02-25T13:30:33
|
|
Vulkan: Fix padding out Buffer allocations on AMD.
We would often pad incorrectly given the constraints of the max stride.
We shouldn't really be rounding up the buffer size, but we should
instead be adding the max alignment size to the end of the buffer.
Bug: angleproject:4428
Change-Id: Id2afc572c85985548a18f60b42cdc388d83d5c4c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2071235
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b185002d
|
2020-02-21T16:58:39
|
|
Fix the condition of glOrtho{fx} validation
According to the OpenGL ES 1.1 spec, remove the conditions
of glOrtho validation that n and f must be positive.
Bug: angleproject:4281
Change-Id: I644a25408a026ce87211f2203b8e8203eeaf69bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2067002
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e3aee0b4
|
2020-02-20T15:19:18
|
|
Remove skip dEQP-GLES31 test now passing on NVIDIA
More precisely, the test is
dEQP-GLES31.functional.vertex_attribute_binding.usage.mixed_usage.mixed_api_change_binding_point
Bug: angleproject:2432
Change-Id: Iafb401380ed00bd823a821d6814be5c22f9667a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2065670
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c7f63a01
|
2020-02-23T16:46:41
|
|
Fix debug callback in perf tests.
Was not outputting correctly. Also print more information like the type
and severity of the message. Moves some stringification code out of
RendererGL into common/utilities.
Bug: angleproject:3630
Change-Id: I029e279764fa4ae5cab8d903bd0ef7d376b7b846
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2067630
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
468dfed3
|
2020-02-21T12:12:51
|
|
Reformat GN files
Otherwise this blocks the CQ at presubmit.
Bug: angleproject:3492
Change-Id: I3cf77c72daa358f5e1eabecf1dcb8808a1dc9e07
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2068538
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
eacec98a
|
2020-02-21T17:23:21
|
|
Suppress SwANGLE dEQP GLES3 failure.
Bug: angleproject:4418
Change-Id: Iec75633351add75433eef3044390934149903ba8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2068898
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
8df46810
|
2020-02-21T13:32:29
|
|
Suppress SwANGLE dEQP failures
As observed from try runs on SwANGLE waterfall.
Bug: angleproject:4110, angleproject:4371, angleproject:4416
Change-Id: I61cf86c60085a53896b7b66fcbf662ab7abe1c18
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2068542
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
39087f4a
|
2020-02-16T11:53:23
|
|
Refactor DrawCallPerf test parameters.
Use the new combiners functions added in an earlier CL. Makes it easy
to maintain bigger lists of test combinations.
Also a few other changes:
- removes some D3D9 perf testing since we don't maintain this config
- removes the "validation only" tests. these were mostly redundant
- makes the tests permutation combinations more consistent
Bug: angleproject:3630
Change-Id: I175d887a01b21123f83f9fa4f64dacaa2644147a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2059468
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c4197713
|
2019-06-03T19:23:02
|
|
Implement glImportMemoryZirconHandle & glImportSemaphoreZirconHandle
Implement import of fuchsia external objects passed by zircon handle. This
works exactly the same as with file descriptors.
Bug: angleproject:3492
Change-Id: I4d46917dfc5902f00c94550158a9f8073097f0a4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1642334
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
519163ee
|
2020-02-15T12:20:17
|
|
Run debug callback in perf render tests.
This can catch unexpected GL errors from ANGLE or the system driver.
Only enable when ASSERTs are enabled to ensure that we get full
performance when profiling.
Helpful to diagnose incorrect perf test rendering. In this case it
helped diagnose that our frame tracing and replay do not correctly
remap uniform locations.
Bug: angleproject:3630
Change-Id: Ifd9f47196381e48f74a810ea0c9f9c0fd7a13a22
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2057352
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
ce4918f1
|
2020-02-19T09:39:44
|
|
Vulkan: Sanitize Images & Buffers with non-zero values.
Only enabled for specific tests at the moment. This CL allows our tests
to sanitizes memory for the robust resource access extension. It is
quite slow so should not be enabled by default.
Only works for 1 level 2D color textures and buffers. Makes several
flaky robust resource initialization tests consistently fail.
Controlled via an angle::Feature in FeaturesVk.
It works by initializing memory to an abitrary non-zero value:
- if newly allocated memory is mappable, we map it in init and set it
- if a buffer or texture can be a transfer destination, we use a
staging resource
- otherwise we don't attempt to initialize the resource.
Bug: angleproject:4384
Change-Id: I9b4f347bfcddf3096f491ed0243bef86837feaa0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2043271
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
166875eb
|
2019-03-27T13:52:04
|
|
Don't clamp in glBlendColor if context supports renderable [half-]float.
Add test for glBlendColor >1.0, skipped on D3D9 since it's unsupportable
there.
Bug: angleproject:3323
Change-Id: I3fcf867dae96bdadf8a0183269d8f27b659d0baf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541723
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jeff Gilbert <jgilbert@mozilla.com>
|
|
b4357d46
|
2020-02-20T08:29:49
|
|
Update expectations after swiftshader fix
Swiftshader fixed issue with shader array length() function.
Bug: angleproject:4098
Change-Id: I129f87a80c4ac254bf1b1112d34fcd2b858eab6a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2066454
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
612cf818
|
2020-02-20T07:56:39
|
|
Vulkan: Update ES 3.1 test expections
Breaking up an old test, narrowing the scope.
Bug: angleproject:4312
Bug: angleproject:4413
Bug: angleproject:4414
Change-Id: Ib570450dc42de111baaf72ba0033515e519bab5b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2066451
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
4864413b
|
2020-02-17T15:34:33
|
|
Vulkan: Implement eglWaitNative function
Implement eglWaitNative API. It will call XSync() on XCB and
do nothing on other systems.
Bug: angleproject:4281
Change-Id: I597b75124a380df519ab10af3cab9b6e26f3194f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2059620
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
49010904
|
2020-02-15T12:21:17
|
|
Refactor test parameters to TracePerfTest.
Reduces much of the code duplication by adding some new helper methods.
The helpers allow combining test parameters similarly to how the
GoogleTest Combine() and Values() generators work. They are more
general and work by returning collections of test parameters instead
of combining generator functions.
Also updates the GLMark2 benchmark runner to use the new methods.
Bug: angleproject:3630
Change-Id: Ibc10f9afb401e119d67a7119974a1a8d9b5abb60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2057353
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
25097b6c
|
2020-02-19T08:07:23
|
|
Vulkan: Lift failing test suppression.
EGLContextSharingTest.DeleteReaderOfSharedTexture/ES2_Vulkan
Passes with the new command graph linearization.
Bug: angleproject:4130
Change-Id: Ic7233696d2c06303ddf46947610b793a1a9e8a65
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2063041
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ee0498b9
|
2020-02-15T09:24:03
|
|
GN: Update trace tests build.
Includes two small fixes:
- add .gitignore for trace tests.
- fix path for restricted traces, should fix bots.
Bug: angleproject:4386
Change-Id: I51c657c4f2e772411e95faa76188d43c8b6981f7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2057350
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1f5f7ea3
|
2020-02-14T23:39:11
|
|
Vulkan: Fix SPIR-V transformation name-info association
Prior to this commit, when "OpName %id name" was encountered, the info
corresponding to "name" was immediately associated with %id. This is
not necessarily correct because there could be multiple ids with the
same name. For example a sampler declaration and an unrelated function
argument could have the same name. In this case, the sampler
declaration and function argument name don't even need to be in the same
shader stage.
This change modifies the SPIR-V transformation such that the name-id
mapping is tracked until the OpVariable instruction that actually
declares the variable is visited. The mapping to variable info is only
done if the storage class specified in this instruction corresponds to a
shader interface variable.
Bug: angleproject:3394
Change-Id: I35a1f6f8278e4b1ad81c9955a55e1b72d6f2e4ea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2057248
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2e0661d7
|
2020-02-17T20:19:13
|
|
Vulkan: Update ES 3.1 test expectations
Split off shader compilation failure to a new bug.
Bug: angleproject:3596
Bug: angleproject:4402
Change-Id: Iac054e469440cfa2b84289e08c5b21e3fbdf5410
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2061448
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3a3e7d4d
|
2020-02-14T14:08:07
|
|
Don't skip functional.layout_binding.ubo.vertex_binding_max on NV/D3D11
This test no longer fails with any recent drivers.
Bug: angleproject:4276
Change-Id: I7a20ee66f1da82d0f378848ccc9faa327a4ed63a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2057065
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d5861a68
|
2020-02-13T15:46:49
|
|
Fix ASAN errors in end2end tests.
2 minor issues of reading from uninitialized memory in tests.
Removes the suppressions from the fixed tests.
Bug: chromium:1029378
Change-Id: I466ce231cfed1ce53a60732706c05b778b096805
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2055649
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
4f9608ca
|
2020-02-13T09:26:52
|
|
Vulkan: Update more bug numbers for ES 3.1
This reflects the most recent conformance run on Android with SwiftShader.
Bug: angleproject:4106
Bug: angleproject:4108
Bug: angleproject:4188
Bug: angleproject:4190
Bug: angleproject:4240
Bug: angleproject:4300
Bug: angleproject:4312
Change-Id: I0107262eecc963a8d5343a53806bb0483b5af3be
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2054068
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
74ab0bff
|
2020-02-12T17:29:27
|
|
Vulkan: Disable command graph by default.
Also removes the angle_end2end_tests feature override.
Bug: angleproject:4029
Change-Id: I0d0bd087fc2143360185592d9fa1238a9bafc55d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2046054
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
593706bc
|
2020-02-10T16:46:52
|
|
Test Runner: Increase default timeouts.
In particular the Debug timeout was not generous enough. Increase the
test timeout to 20 seconds in Release and 60 seconds in Debug. Increase
the batch timeout to 240 seconds in Release and 600 seconds in Debug.
Bug: angleproject:3162
Change-Id: I0bd0ea18cb5cdab005143b8deed9500d9d2e8ea1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2047415
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
3b82506a
|
2020-02-11T09:35:38
|
|
Vulkan: Command graph linearization (Step 5).
Implements ES 3.1 support.
Bug: angleproject:4029
Change-Id: I3c08602cf4ec64621bfdb40cd40d142b666e6edf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2046052
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
72e9f4d7
|
2020-02-11T11:14:35
|
|
Vulkan: Update bug number in KHR ES 3.1 expectations
It was pointing to general ES 3.1 bug.
Bug: angleproject:4107
Change-Id: Ief726c57d5a853d633df705eb30e8cdad3f6c9ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2050030
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
1a8b7758
|
2020-02-11T10:34:00
|
|
Fix assignment of CacheOpResult::EnumCount
The special enum value 'EnumCount' is used by EnumSize() to determine
how large to make the PackedEnumMap::mPrivateData array. However, that
enum entry was being assigned an incorrect value, leading to the array
being constructed too small and causing a crash in PackedEnumMap's
std::initializer_list constructor when it went beyond the size of the
array to assign each of the necessary values.
The fix is to remove the assignment of CacheOpResult::EnumCount and let
it indicate the real number of entries in the enum.
Bug: angleproject:4393
Test: end2end
Change-Id: If9635c61e72aadc6527d416f83be18add8b24572
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2050026
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
cd8167fb
|
2020-02-10T14:17:09
|
|
Vulkan: Fix EGLBlobCacheTest.
Several runs of the same test in a row would cause a failure if the
cache would get hit. Fix the flakiness by resetting the cache between
runs.
Also cleans up some of the variable naming and adds a stream output
for pretty test errors.
Fixed while working on the standalone test harness.
Bug: angleproject:3162
Change-Id: I64da8a37eedf562860e3e5409cbf6fb08e81dfa4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2047417
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
3c066404
|
2020-02-05T12:43:12
|
|
Vulkan: Command graph linearization (Step 4).
Implements GLES 3.0 functionality for the new command recording style.
Tested with angle_end2end_tests. dEQP/CTS testing will come later.
Bug: angleproject:4029
Change-Id: Ibdc4f1355a7b880946699ec227fd9807f4a27af9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2040197
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
041ebfed
|
2020-02-10T13:39:34
|
|
Speed up InstancingTest.LineLoop.
This test was taking 14-20 seconds in release mode. Likely because of
the way we were issuing a ReadPixels and "std::endl" to a stream for
every pixel of a 256x256 Framebuffer. Instead issue a single ReadPixels
call and no stream flushes. Now runs in less than 500ms.
Helps prevent timeouts when running tests multi-process. Also enables
the test on D3D9.
Bug: angleproject:3162
Change-Id: I27aad773040d6b6668cbde003802345e01044a7d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2047414
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8257ac30
|
2020-02-07T14:17:08
|
|
Vulkan: Defer RenderPass image barriers.
We accumulate image barriers in two places:
* for GL sampler textures
* for GL framebuffer attachments (Render Targets)
Then we issue the barriers together in a single call before the RP.
This fixes a bug where we were missing a layout transition in some
cases when transitioning between a sampler and a render target. It
should also be faster to issue a single barrier before a RP than issue
several smaller barriers.
Bug: angleproject:3539
Bug: angleproject:4029
Change-Id: I180b770f0df6b44d209e5c618ba36bcc1c6372e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2044236
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
788fa360
|
2020-02-10T14:07:12
|
|
Suppress two failing NVIDIA D3D11 tests.
Bug: angleproject:4391
Bug: angleproject:4392
Change-Id: I81cbf261cf206cd2d38cff93d16056c21bf78557
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2047416
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a8e6a463
|
2020-02-09T13:10:24
|
|
Suppress Vulkan RobustResourceInit tests.
These tests are flaky because of a bug in ANGLE's Vulkan robust
resource init. Mark them as failing until we can resolve the bug.
Bug: angleproject:4255
Bug: angleproject:4384
Change-Id: I8e18a8532850848fc7a25e137dce27dd0d19fa55
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2046053
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c3854ebc
|
2020-02-07T11:11:26
|
|
Vulkan: Clamp vertex buffer offsets.
Vulkan mandates that vertex buffer offsets are within the size of the
buffer even if robust buffer access is enabled. Do a check in
VertexArrayVk::syncDirtyAttrib to guard against this.
Bug: angleproject:3350
Change-Id: Ia01deb9b7335dd8f632f2cf9b32d2908ba55645c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2044491
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
e02f4996
|
2020-02-06T12:26:07
|
|
Vulkan: Pass correct level count in getLevelDrawImageView
This bug was hit by a KHR ES 3.1 test.
This CL just applies the obvious fix already noted by jmadill@.
Test: KHR-GLES31.core.shader_image_size.*-nonMS-*
Bug: angleproject:4008
Bug: angleproject:4108
Change-Id: I5d05c0a7432f7b70d2b995fd8b11224c119ece5f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2042491
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
3a2522de
|
2020-02-06T10:05:23
|
|
Make TransformFeedbackTest deterministic.
Instead of using rand(), use a fixed seed RNG. This can ensure runs
use the same draw call counts no matter the time of day.
Note: there may have been a setting somewhere that was seeding the RNG
because I wasn't seeing variation between test runs locally. This
change makes it explicit.
Bug: angleproject:4029
Change-Id: Ic51bf2a6779da3b96a3357eed99c0f7fa9d81648
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2042210
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e9dc0201
|
2020-02-04T12:04:28
|
|
GL: Mark unused uniform locations that were explicitly bound as ignored
If a uniform location is unused, but a call to glBindUniformLocation has
explicitly bound the uniform, ANGLE validation still treated the uniform
as unused and returned errors. The correct behavior is to ignore the
uniform and silently fail.
Bug: angleproject:4374
Change-Id: Ic7b97f23cf8bc2d5380129322595e51b3d4a9fcc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2036676
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e5385ea9
|
2020-01-27T13:40:18
|
|
Vulkan: Compile shaders at link time
Since line raster emulation was changed to use specialization constants,
it has been possible to compile shaders at link time. However, program
pipeline objects would have required keeping the shader sources around
for recompilation. Now that all necessary decorations are modified
directly in SPIR-V, it's possible to compile the shaders at link time
and forget about their sources. Program pipeline objects then simply
"reconfigure" the generated SPIR-V.
A next step could be to also create the Vulkan pipeline object at link
time. A number of failures due to gaps in CTS testing prevent that work
currently. In particular, in some situations the generated SPIR-V is
not per spec, for example it may contain vertex attributes with aliasing
locations, or have transform feedback capture of array elements
misconfigured.
Bug: angleproject:3394
Bug: angleproject:4253
Change-Id: I54c0884cf056b511a4a306225cc6ed2cef84d257
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023186
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
20b1259a
|
2020-02-05T17:08:05
|
|
Vulkan: Command graph linearization (Step 2).
ES 2.0 is feature complete.
Passes all of the angle_end2end_tests with the new linear command
recording method. Also runs the T-Rex benchmark without any obvious
glitches. Likely has issues with creating too many RenderPasses. ES3
is mostly untouched.
Bug: angleproject:4029
Change-Id: Ic5acf3d768495fbffd07b07bf0a6f2b5787c51f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012900
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
806ba566
|
2019-12-12T13:02:01
|
|
Extend ANGLE_iosurface_client_buffer to Vulkan backend for Swangle
Implement an IOSurface-backed pBuffer surface for the Vulkan backend
on Mac, through SwANGLE. ANGLE will pass a raw pointer to Swiftshader
and handle locking/unlocking the IOSurface.
Bug: chromium:1015454
Change-Id: Ia3ead55334736003d405b54ba8dcc7701706fbb2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1965434
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f764fc02
|
2020-02-03T10:33:58
|
|
Fix varying linking by location
This change breaks the assumption everywhere that varyings can be
identified uniquely by name throughout all stages of the pipeline.
It further implements linking of varyings by location, if specified.
Bug: angleproject:4355
Change-Id: Ie45e48879008c3f0c22d1da3d0d26f37c655e54e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2030026
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
4546c5ce
|
2020-01-31T15:05:35
|
|
Skip failing end2end tests on Windows on ARM
There are multiple failing tests on Windows on ARM which are related to drawing differences.
They seem to be similar to an already reported issue (anglebug.com/3748).
Bug: angleproject:4356
Bug: angleproject:4357
Change-Id: Ide5cc2e6f42d4c4b6fb88352833d20e517005c14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033067
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
07795d47
|
2020-01-31T16:08:52
|
|
Disable rewriteRowMajorMatrices workaround.
It's causing flaky crashes in tests. Leave the revised code in place
so it's easier to debug. Disable test which required the workaround.
Bug: angleproject:2273
Bug: angleproject:3843
Change-Id: Iebb682bd3c6282031cc57eda5d3d4d5636be7294
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033870
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
f63fbcd5
|
2020-01-29T16:13:56
|
|
Fuchsia: Limit number of concurrent presents in ScenicWindow
The test suite occasionally runs into the following error:
[02036.794449][326733][326738][klog] INFO: [ERROR:src/ui/scenic/lib/scenic/session.cc(412)] Scenic session error (session_id: 1): Present2() called with no more present calls allowed. Terminating session.
This is actually a problem with the test harness as resetting the window
triggers a present with no fences and no OnFramePresentedCallback which
means there is no way to know if we will exceed the limit.
Add an OnFramePresentedCallback and count presents to stay under the
limit. This blocks if there's more than 2 in flight presents. A dedicated
async loop is used to avoid re-entering other code while waiting to
present (there is no such case in the ANGLE test suite currently, but
better safe than sorry).
Typically if we run the whole suite there will be a failure in the
middle, but re-trying the test that failed won't repro the issue. Add a
test that reliably exhausts the limit by calling resetNativeWindow() in a
loop.
Bug: angleproject:4360
Change-Id: I24eb01fd72fc0be57c36e49b5875023a80d6ab91
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027934
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
71153201
|
2020-01-29T14:42:30
|
|
Vulkan: Disable restartRenderPassAfterLoadOpClear workaround
This workaround was added due to qualcomm driver bug b/129281932. But
this has been fixed with recent drivers. Removing the WR here so that it
will not negatively affect performance.
Bug: angleproject:4344
Change-Id: Iea2ec86082a0ced64bfe843bf916c6bdb2aea60b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2029210
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
c73475fb
|
2020-01-29T11:37:05
|
|
Vulkan: Fix UtilsVk dirtying driver uniforms descriptor set binding
Most UtilsVk functions bind a descriptor set to index 0 (same as driver
uniforms). If that happens to close a render pass, all is well as
starting a new render pass ensures all descriptor sets are rebound.
However, if the render pass is not closed, or if a dispatch call is
issued (which never rebinds descriptor sets if not explicitly
necessary), then the driver uniforms descriptor set may end up never
rebound, causing a validation error (and possible crash or corruption).
This change makes sure that UtilsVk notifies the context when it binds a
descriptor set. The context then dirties the driver uniforms binding
as appropriate.
Bug: angleproject:4272
Change-Id: Ief20c7884fbe39712f844247489812afc70b30a9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027938
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e196bc85
|
2020-01-17T13:11:20
|
|
Add driver bug workaround for rewriting row major matrices.
Joint work with syoussefi@, who wrote the RewriteRowMajorMatrices
pass, and revised it for this CL to not rely on the
NameNamelessUniformBuffers pass - which was breaking it on the GL
backend.
Hook up previously written RewriteRowMajorMatrices transformation, and
enable on all GPU types on macOS. It is needed at least for AMD and
Intel GPUs.
Add a new test which verifies the behavior of dynamically-indexed
arrays of row-major matrices.
Bug: angleproject:2273
Bug: angleproject:3843
Change-Id: Id582f9cf6b9b1a59091aab1786539174f360b705
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008717
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ee07cb31
|
2020-01-29T18:02:50
|
|
Test Harness: Allow filter with sharding params.
Some tweaks to when we call gtest initialization allows this to work.
Bug: angleproject:3162
Change-Id: I75159108d3f746f666e57c1a6495a8c8616ef1cf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024335
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
e4859ae5
|
2020-01-27T15:21:58
|
|
Fix re-enabling ARB_texture_rectangle
My earlier change https://crrev.com/c/1991969 had a bug. If
ARB_texture_rectangle is disabled once, it can't be re-enabled because
the extension behavior entry is deleted. ResetExtensionBehavior needs
to restore it.
Bug: angleproject:3770
Change-Id: Icf96acece8ea8d17287c8d09fb4849b61c9c2a36
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023398
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
|
|
33027d3e
|
2020-01-28T16:08:02
|
|
Enable GL_OES_depth_texture_cube_map with Vulkan backend
GL_OES_depth_texture_cube_map depends on depthTextureOES,
but adds the same new texture format/type requirements as
GL_OES_packed_depth_stencil, so instead of adding a
specific check for GL_OES_depth_texture_cube_map, the
Vulkan backend checks for a combination of
GL_OES_depth_texture and GL_OES_depth_texture_cube_map
to enable GL_OES_depth_texture_cube_map.
ANGLE has no specific checks for whether a format is
"cubemappable", but Vulkan has no restrictions of the
format of cubemaps, so if the proper formats are
supported, creating a cube of any of these formats
should be implicitly supported.
Bug: angleproject:4293
Change-Id: I968dbe8869ba0f50de18dd41f1195e847c06b520
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2026027
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
09d51a57
|
2020-01-24T17:28:24
|
|
Fuchsia: Skip PointSpriteAlternatingDrawTypes on ARM Fuchsia
This is not passing currently, skip it for now.
Bug: angleproject:4349
Change-Id: If36a144e8d17cc94c2186a7a794358b14223349e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023913
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cb2b5136
|
2020-01-10T11:04:38
|
|
Vulkan: Simplify format table generation
Remove the "override" table. That gets in the way of some solutions.
If a format cannot be supported by a native Vulkan format as indicated
in the "map" table, then check fallbacks.
Also add support for native RGBA4 and R5G5B5A1 support. Previously
those formats would be emulated with RGBA8 due to the override, but
now code will check if the native format is available and use it.
Bug: angleproject:4282
Change-Id: Ib33ea40543d91a2c2a95075b277f825a8822037c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1994538
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
f1f082e1
|
2020-01-17T14:53:38
|
|
Vulkan: Set varying location & xfb decorations in SPIR-V
The shader translator outputs arbitrary location indices. Once compiled
by glslang, the SPIR-V transformer modifies these decorations. If the
transform feedback extension is used, it will also add the relevant
decorations to the varyings that are captured.
Bug: angleproject:3394
Change-Id: I5ecafd0536408612a5d4b920dbabbfabe650657c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008468
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
05e08edf
|
2019-12-26T20:58:48
|
|
Disable skipValidation when context is lost.
Lost no-error contexts should gracefully handle GetProgramiv, etc.
Includes test that a lost no-error context doesn't crash on getProgramiv.
Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1601703
Bug: angleproject:4244
Change-Id: I8c37df37e83308ab85ad958df6dab46b0ab348e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2003239
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
71e6afb1
|
2020-01-14T14:12:31
|
|
Vulkan: Set set/binding in SPIR-V
This change introduces a SPIR-V transformer that modifies shader
interface variable decorations directly in SPIR-V instead of
manipulating the input GLSL. Currently, descriptor set and binding
indices are set by the transformer.
The shader translator outputs arbitrary set and binding indices. Once
compiled by glslang, the SPIR-V transformer modifies these decorations.
The ultimate goal is to be able to modify the SPIR-V again when program
pipeline objects decide a different set/binding is necessary.
Bug: angleproject:3394
Change-Id: If358265a72bf1fe9f5676562b39a632cb2e05dc4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2001477
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2bc9cc12
|
2020-01-24T16:40:46
|
|
Fuchsia: Blacklist swiftshader on Fuchsia
This doesn't work and is highly misleading as the tests run with the real
GPU.
Bug: angleproject:4353
Change-Id: Id9139436e39d5e8e063bcc679b7c63f589d3b748
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023912
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
44c75073
|
2020-01-20T19:59:55
|
|
Fuchsia: Disable GLES3 testing on Fuchsia ARM
The vulkan driver is missing required extensions so these tests are all
failing.
Bug: angleproject:4352
Change-Id: Id1af7c40798d8844fbf832c6066260fe3a8bfeda
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023911
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e28883de
|
2020-01-25T23:25:43
|
|
Vulkan: Fix handling of inactive fragment outputs
These were never assigned a location. They are now removed by the
translator similar to other inactive variables.
Bug: angleproject:4313
Change-Id: I3398d06e1dea3f43b84f206cca07cde5b44b21a8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2021734
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e3ba0d7d
|
2020-01-28T13:46:13
|
|
Disable 'nodiscard' warning on MSVC for dEQP.
Bug: angleproject:4358
Change-Id: I774b4ba442e27935a676f2ce82356e8c77a0db27
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024334
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4a8fa19f
|
2020-01-27T17:19:57
|
|
Fuchsia: Switch to gfx_tests sandbox configuration
The default sandbox config for tests built in chromium doesn't allow
access to the GPU or display. Switch to the gfx_tests sandbox config
to allow the tests to run.
Bug: angleproject:4350
Change-Id: Ib80db196ef55df694369cfc7a3cf18327ce7c952
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023908
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a6dfa11f
|
2020-01-28T09:09:47
|
|
Vulkan: SwiftShader now getting correct sample positions
This was fixed in SwiftShader and I verified it
Bug: angleproject:4213
Change-Id: I6f591b81a62ec4c586d4abb7e6a2345794602833
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2025066
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
7488a096
|
2020-01-27T22:17:59
|
|
Add a test to expose location'ed varying link bug
Bug: angleproject:4355
Change-Id: I2b914d3e6bf74ccf5d3f42d7bd010e44e45645ea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023921
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
086aded3
|
2020-01-26T13:40:02
|
|
Return the correct location count for matrices in structs
GetLocationCount() returned secondary size for fields of a struct. For
matrices however, the correct value would be the primary size.
This is a similar fix to 6423b7fc7ded02a702d24feb0730731ab9f6c061.
Bug: angleproject:4200
Change-Id: I2c69b9454729993010766fcde0cabec986b7429d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2021738
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2d1d9d35
|
2020-01-27T12:09:41
|
|
Fix atomicAdd validation w.r.t to swizzles
Bug: angleproject:4150
Change-Id: I22c0c0382a2b208dd983fa1981ffc75f1b1945e9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022359
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a1f1cce6
|
2020-01-27T11:34:58
|
|
Vulkan: updateActiveImages: process each image once
There are two issues with processing the images multiple times:
- The graph trips up because on the first addWriteDependency, the
current writer pointer of the image will be set to the recorder, and
which on the next addWriteDependency creates a self-dependency.
- We transition the layout of the whole of the image, so doing that
multiple times is inefficient.
Bug: angleproject:4312
Change-Id: Ibae72e8698edf5db97139f48d68624d3e9a1d5db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022355
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
080d711b
|
2020-01-08T13:04:44
|
|
Tests: Add a perf test using traces
This test will load traces and cycle through a set of frames.
The new tests are:
TracePerfTest.Run/gl_trex_200_210
TracePerfTest.Run/gl_trex_800_810
TracePerfTest.Run/gl_trex_900_910
TracePerfTest.Run/gl_trex_1300_1310
To download the traces, you must be granted access and authenticate
with the cloud. See the steps in RestrictedTraces.md for this.
Then add the following to the end of your .gclient file:
"custom_vars": {
"checkout_angle_internal":"True"
},
And run `glcient runhooks`.
To enable building the test, add the following GN arg:
build_angle_trace_perf_tests = true
See the new markdown document for ways to execute the tests.
Bug: angleproject:3630
Change-Id: Ic25cd94fb36b35fcf187e88d3bf9548c65f59755
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1949605
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3712b2e4
|
2020-01-24T17:08:30
|
|
Vulkan: Command graph linearization (Step 1).
This initial prototype introduces a new feature to the Vulkan back-end
that disables the deferred command recording. The intent is to have a
lower CPU overhead during submission calls which currently walk a DAG.
The feature is not complete. Currently it only passes the ANGLE
SimpleOperationTests. Moreover it is extremely simple and only allows
use of one command buffer at a time. In the future we'll allow open
command buffers for recording outside and inside render pass commands
at the same time. We'll also support collapsing RenderPasses together
for some use cases.
Currently the prototype only passes "SimpleOperationTest". There are
quite a few unimplemented features like queries, XFB, etc.
Bug: angleproject:4029
Change-Id: I82760986683f55e37ac4ea559de6f4cffb6ef84e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1953485
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
d5d8ffa8
|
2020-01-17T14:59:34
|
|
Disable ANGLE GL and Vulkan on Windows on ARM
Currently Windows on ARM doesn't support OpenGL but it is enabled in ANGLE by default.
Vulkan is only supported via Swiftshader so we should not test native Vulkan.
Therefore it causes crashes and fails on Windows on ARM when running angle_end2end_tests.
Bug: angleproject:4318
Change-Id: I70349ed53a2248df2dc8e7a0c0b3a6a5537a1110
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2007414
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e93a438b
|
2020-01-10T01:48:24
|
|
GL_OVR_multiview shouldn't be defined for WebGL spec'ed shaders
According to the latest change in WebGL's OVR_multiview2 spec, the GL_OVR_multiview should NOT be defined. Refer to https://www.khronos.org/registry/webgl/extensions/OVR_multiview2/
I.e. this shader should NOT fail compilation:
#version 300 es
#extension GL_OVR_multiview2 : require
#ifdef GL_OVR_multiview
#error legacy GL_OVR_multiview support must be forbidden
#endif
....
Bug: angleproject:4279
Change-Id: Ic94cba6785ea3a1fa14d5131dc0960214aa574be
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1994830
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
|
|
0a3f58f1
|
2020-01-24T09:54:31
|
|
Fix undefined behaviour in ClearTest.
We were expecting an uninitialized texture to contain black. However
the contents of the texture data may be undefined.
Discovered when working with the Vulkan command stream refactor.
Bug: angleproject:4029
Change-Id: Ia5d24707746819b116ac0053fabb48033574569a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2017978
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1d480fcc
|
2020-01-23T16:08:53
|
|
Fix image linking not verifying same format
Bug: angleproject:4316
Change-Id: I7508c0f9b0546bf3a23f819de49e7a91a74b6bc9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2018046
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
24627fa4
|
2020-01-21T11:39:56
|
|
Row-major test: switch to compute
Based on Nvidia's recommendation that the following:
all(lessThan(gl_FragCoord.xy, vec2(1.0, 1.0)))
isn't necessarily true for only a single FS invocation, even when not
multisampling. The tests that do the above are changed to compute
instead.
Bug: angleproject:3831
Change-Id: I22d935f797c2e385218bc6af31e98a7f672a7707
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012743
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
abaeb415
|
2020-01-20T20:33:23
|
|
Vulkan: Fix setupDraw when VK_EXT_transform_feedback is not enabled
There's no dirty bit handler if VK_EXT_transform_feedback disabled, but
we're setting that dirty bit in syncState. This results in calling a null
method pointer. Skip the invalidate if the extension is not enabled.
gl::LogMessage::~LogMessage() at ./../../third_party/angle/src/common/debug.cpp:0
rx::ContextVk::setupDraw(gl::Context const*, gl::PrimitiveMode, int, int, int, gl::DrawElementsType, void const*, angle::BitSetT<11ul, unsigned long, unsigned long>, rx::vk::priv::SecondaryCommandBuffer**) at ./../../third_party/angle/src/libANGLE/renderer/vulkan/ContextVk.cpp:844
rx::ContextVk::drawArrays(gl::Context const*, gl::PrimitiveMode, int, int) at ./../../third_party/angle/src/libANGLE/renderer/vulkan/ContextVk.cpp:1698
gl::Context::drawArrays(gl::PrimitiveMode, int, int) at ./../../third_party/angle/src/libANGLE/Context.inl.h:112
gl::DrawArrays(unsigned int, int, int) at ./../../third_party/angle/src/libGLESv2/entry_points_gles_2_0_autogen.cpp:926
(anonymous namespace)::AttributeLayoutNonIndexed::Draw(int, unsigned int, unsigned short const*) at ./../../third_party/angle/src/tests/gl_tests/AttributeLayoutTest.cpp:431
(anonymous namespace)::AttributeLayoutTest::Run(bool) at ./../../third_party/angle/src/tests/gl_tests/AttributeLayoutTest.cpp:305
[This stack is from the added assert; calling a null function pointer
crashes without producing a useful stack trace.]
Bug: angleproject:4326
Change-Id: I036ae322bddc4865229fa3fe7ea72a4344b99f83
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2011408
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
13881af3
|
2020-01-21T12:52:56
|
|
Vulkan: Fix cast of float to unsigned int for ARM
ARM devices cast float to unsigned int differently than Intel devices.
Need to do additional work to ensure consistent behavior.
This was causing negative API tests to fail because the invalid
parameter was being turned into a 0 which is valid, but not what was
intended (should have been 0xffffffff).
Bug: angleproject:4323
Change-Id: I7447842d0f56362d9eb2db4d04b5416c78e51d27
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012746
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b36e46ab
|
2020-01-08T15:49:18
|
|
Vulkan: Line raster emulation through specialization constant
In preparation for compiling shaders early at link time, this change
reworks line raster emulation such that it uses specialization constants
instead of a preprocessor condition. This means drawing both triangles
and lines with this program will still result in a one-time shader
compilation.
The compilation is still done at draw time in this change.
Bug: angleproject:3394
Change-Id: I0bf91398868d7f7147456533b728906b505192b2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1992365
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
230e14dd
|
2020-01-21T23:32:06
|
|
Add support for layout(early_fragment_tests) in;
Bug: angleproject:4314
Change-Id: I37b228f37201cc4188834e68459cd7294727c3ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2014240
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
01e28144
|
2020-01-21T13:15:18
|
|
Row-major test: Clarify std140's stride calculation
Bug: angleproject:3830
Change-Id: I5fa213927b609ef33c729ded5d42add8f148dcb1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012622
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5a7356ae
|
2020-01-16T23:22:31
|
|
Add support for non-float mix
The non-float variations of the mix builtin were conditioned to desktop
GLSL, but they are present in ESSL 3.1+. This change also implements
constant folding of these builtins as exercised by dEQP.
Bug: angleproject:4300
Change-Id: Iec34de4cf370e00d67fd605148cd7848f9e122f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2006809
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
a8614528
|
2020-01-17T15:48:19
|
|
Update expectations after dEQP test fixes
Latest dEQP roll included some test fixes for GLES 3.1
Remove those exclusions from expectations file.
Bug: angleproject:3590
Bug: angleproject:4323
Change-Id: If08c474490c24f63d2f8cc198ee7e3dc85d7f999
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008128
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
f6506799
|
2020-01-22T11:50:08
|
|
Reduce fail expectations dEQP-GLES31.functional.program_interface_query.buffer_variable.*
There are still a subset of failing tests, but the failures mentioned in angle
bug 2277 are no longer expected.
Bug: angleproject:2277
Change-Id: I6c55283911bb7be4208b41e9bcd1a4960ed5fc5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012948
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
681c707e
|
2020-01-21T10:48:31
|
|
Reduce D3D11 skips in dEQP-GLES31.functional.program_interface_query.buffer_variable.*
There is still a failing subset, which is partially investigated in angle bugs
4329 and 4330.
Bug: angleproject:4329
Bug: angleproject:4330
Change-Id: I286bb42f521e00b3687bf327feaed47444deafc5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2010114
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7f8b6e3f
|
2020-01-20T13:59:32
|
|
Vulkan: Add support for GL_IMAGE_FORMAT_COMPATIBILITY_TYPE
For some reason, this wasn't implemented when texture image load and
store was implemented.
Bug: angleproject:4311
Change-Id: I24c508660ad7eb3aa944601175803751b54ce0ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2011324
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
845a09b8
|
2020-01-20T12:57:18
|
|
Vulkan: glDeleteTexture unbind all image texture units
The old code only unbound one image unit when a texture was deleted.
The GLES specification is clear that the texture should be unbound from
all units:
If a texture object bound to one or more image units is deleted by
DeleteTextures, it is detached from each such image unit, as though
BindImageTexture were called with unit identifying the image unit and
texture set to zero.
Bug: angleproject:4310
Change-Id: I24c508660ad7eb3aa944601175803751b54ce0dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2011322
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
62475e95
|
2020-01-20T11:16:24
|
|
Allow tests to pick ANGLE features.
This uses the EGL_ANGLE_feature_control extension through the test
harness to control feature selection via a test config. This obviates
the need for the hacky platform methods table override.
Also adds a command graph feature that will be used to prototype the
command graph linearization for Vulkan.
Bug: angleproject:4029
Change-Id: Id37fadd5d2c317c9d9dd90dfab1fdc8e4ac3701f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2007612
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3cbeaba4
|
2020-01-17T12:28:45
|
|
Remove suppression of passing test
Fixed in
https://chromium-review.googlesource.com/c/angle/angle/+/2006813, but
suppression was not removed.
Bug: angleproject:4309
Change-Id: I430501c0d977a8c5999390f2ad895290e2301dc5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008129
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
33a2c43d
|
2020-01-16T15:24:47
|
|
Sort GLES 3.1 expectations to show conformance blockers
Sorted by group (i.e. blocking conformance, desktop, general Vulkan, Android).
Bug: angleproject:3520
Change-Id: I6f7c702460b3d1908838796d88e5448d4f83b242
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2006018
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
5860f84a
|
2020-01-17T00:58:48
|
|
Vulkan: Narrow KHR-GLES31 image failures
Bug: angleproject:4309
Bug: angleproject:4310
Bug: angleproject:4311
Bug: angleproject:4312
Bug: angleproject:4313
Bug: angleproject:4314
Bug: angleproject:4315
Bug: angleproject:4316
Change-Id: Ibda4eac6a49ad7a8fcf0ec68b6dd199a3f66ebb0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2006812
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d9689725
|
2020-01-16T14:46:46
|
|
Suppress UniformsBenchmark perftest on Win/NVIDIA/Vulkan
Started failing on Jan 11, 2020
Bug: chromium:1041672
Change-Id: Ie51c0d363b49025c607c32a1858cdaf8c38ebf87
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2003013
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
df0203a9
|
2020-01-15T14:05:33
|
|
EGL: Add support for EGL_EXT_pixel_format_float extension
Add support for floating point configs. On backends that
support rendering to floating point formats, add them to
EGL's frambuffer config list
Bug: angleproject:3958
Tests: dEQP-EGL.functional.wide_color.*fp16*
angle_end2end_tests --gtest_filter=EGLFloatSurfaceTest*
Change-Id: Ie65f63013483267985c2b308567bf5025acf750e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993686
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a7b91502
|
2020-01-15T13:35:08
|
|
Vulkan: Updated expectations after recent fixes
Bug: angleproject:3569
Bug: angleproject:3596
Bug: angleproject:4106
Bug: angleproject:4108
Bug: angleproject:4300
Change-Id: Iab88bf5db19af802ad41ef8bf68f643420857989
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2003233
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
ffdd58f5
|
2019-12-28T15:34:41
|
|
Fixing OVR_multiview and OVR_multiview2 issues
Found two issues when native OVR_multiview and OVR_multiview2 extensions are generated.
1. OVR_multiview got replaced by the OVR_multiview2 in the translated shader (ESSL & GLSL)
2. Duplicate #extension OVR_multiview2 (for Fragment & Vertex) and 'layout (num_views=x)' (for Vertex) got generated into the translated shader.
Bug: angleproject:4247
Change-Id: I9a550883eeb326d95af4557578f8202a9493f4ec
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1983802
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
2e1beb40
|
2020-01-14T12:08:02
|
|
Add a test to expose translator bug w.r.t short circuiting
Bug: angleproject:3829
Change-Id: I872118f145886eecaed1680268e95419385b9d9e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2001237
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
feb3b6cc
|
2020-01-13T22:58:59
|
|
Vulkan: Remove row->col major shader transformation
This was done based on the incorrect assumption that Vulkan GLSL doesn't
allow layout qualifiers on interface block fields. This was due to
glslang compile failures in some shaders that included mixed row- and
column-major fields in interface blocks.
However, the failures were only in the case the interface block is
inactive, in which case glslang wrapper previously replaced the
layout/qualifier of the interface block with |struct|, which left the
shader with an unused struct definition with fields that have layout
qualifiers; an invalid shader.
The change introduced in
https://chromium-review.googlesource.com/c/angle/angle/+/1951523
removes inactive shader interface declarations. The above scenario thus
never occurs, rendering the row- to column-major transformation
unnecessary.
Bug: angleproject:3443
Change-Id: Ice34a0fc6e047b79a4d44f04b730ec59bdfafe33
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1961098
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b09d46cc
|
2020-01-13T10:56:46
|
|
Add P010 stream test
Makes sure P010 stream can work correctly.
Bug: chromium:1033416
Change-Id: I1b49568cd667697337335a0eca74504bd0e36f5c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1996912
Reviewed-by: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|