|
a4a3c19a
|
2018-06-07T11:05:40
|
|
Remove manual references to exe_and_shlib_deps
After [1], a manual dependency on exe_and_shlib_deps is no longer necessary
since it's automatically added. This CL removes all remaining manual references
to exe_and_shlib_deps.
[1] https://chromium.googlesource.com/chromium/src.git/+/d7ed1f0a9c28c932fddc834ca5de44f28266c7f5
BUG=chromium:845700
Change-Id: I66bcead6586050bf952c4aa1f4d3f726c88d2277
Reviewed-on: https://chromium-review.googlesource.com/1091231
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
c3907efa
|
2018-06-08T13:03:15
|
|
Always use custom float parsing in GLSL
We now always use custom parsing code for parsing floats in GLSL
shaders. Previously this code was only used in corner cases that
stringstream parsing did not handle according to the GLSL spec.
This is slightly faster in compiler perftests, and results in a
smaller binary as well.
Some new test cases are added to make sure that the custom float
parsing behaves correctly.
BUG=chromium:849245
TEST=angle_unittests, angle_perftests
Change-Id: I2a88ec6a8b427016e34519d72bc98216947a4c64
Reviewed-on: https://chromium-review.googlesource.com/1092697
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
4b06c1e9
|
2018-06-07T13:42:36
|
|
Add a test to expose boolean uniform bug on Intel windows
This test is ported from webgl conformance test
WebglConformance_conformance2_glsl3_short_circuiting_in_loop_condition.
Since HLSL and ESSL have different rules to process short-circuit evaluation,
this patch will use the final flattened shader so that the translated HLSL
is almost same with the current ES shader.
BUG=843369
TEST=angle_end2end_tests
Change-Id: Ibc742f8ac4592a83c4c7dad37a64a5563eb58bd5
Reviewed-on: https://chromium-review.googlesource.com/1090328
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e1a057e8
|
2018-06-07T15:09:00
|
|
Fully format some files.
Change-Id: Id6ea245849696d4c6d7eabc6860c0ac424dd8013
Reviewed-on: https://chromium-review.googlesource.com/1091309
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
ea17575d
|
2018-06-07T10:18:29
|
|
Vulkan: enable invariance dEQP tests
Change-Id: I911e3e8460be2205119bb53ebbe8f56677e9e4c6
Reviewed-on: https://chromium-review.googlesource.com/1090760
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
2bd1fabf
|
2018-06-06T10:30:19
|
|
Update dEQP expectations after June 2018 roll.
BUG=angleproject:2629
BUG=angleproject:2349
BUG=angleproject:2327
BUG=angleproject:2328
BUG=angleproject:2630
BUG=angleproject:2631
BUG=angleproject:2349
Change-Id: Ie0752dd07ec8ee151e56c1d4362c47249b7393fc
Reviewed-on: https://chromium-review.googlesource.com/1088876
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
f7af13c4
|
2018-06-06T14:14:54
|
|
Fix the divide by zero exception in BindBufferRange
This bug is caught because we haven't implemented
caps.shaderStorageBufferOffsetAlignment on D3D backend. So the default
value is 0. This change will set its value for D3D11 backend.
BUG=angleproject:2625
TEST=angle_deqp_gles31_tests
Change-Id: I03c045c08903e4da41659133e7dbd9c4133186cc
Reviewed-on: https://chromium-review.googlesource.com/1088192
Reviewed-by: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
096a6c8c
|
2018-02-27T23:48:21
|
|
ES31: copy to a texture with RGB9_E5 internalformat is invalid.
BUG=angleproject:2378
TEST=dEQP-GLES31.functional.debug.negative_coverage.get_error.texture.copytexsubimage2d_texture_internalformat
Change-Id: I4ad0ec6636c0312a3ecfeb47df3297e4bf399c35
Reviewed-on: https://chromium-review.googlesource.com/938328
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yunchao He <yunchao.he@intel.com>
|
|
d1978037
|
2018-06-05T14:37:00
|
|
Roll dEQP (June 2018).
Quite a substantial update.
Includes ANGLE-related fixes contributed by Google and Intel.
Also includes some test suppressions for ES 3.1 D3D11.
Bug: angleproject:2617
Bug: angleproject:2619
Bug: angleproject:2625
Change-Id: Iea90036996b1a49278443e5d88dbe7ace32de6d4
Reviewed-on: https://chromium-review.googlesource.com/1087179
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
7ba3f425
|
2018-06-01T09:43:04
|
|
GLES1: Fog API and rendering
- Update test expectations
BUG=angleproject:2306
Change-Id: Ic5aa5f052bcbe9c5adaf0eb0c6c06df66fd1720c
Reviewed-on: https://chromium-review.googlesource.com/1082978
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
060088a5
|
2018-05-30T20:40:57
|
|
GLES1: Clip plane API and rendering
- Add unit tests for the API
- Update test expectations
+ Pass through point size from the vertex array to the shader,
required for new tests to pass.
BUG=angleproject:2306
Change-Id: Ib19436c1f4cb12873adea94f734c821363f9e27d
Reviewed-on: https://chromium-review.googlesource.com/1079993
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
fba1f61d
|
2018-06-04T14:37:17
|
|
Vulkan: No-op on ProgramVk::Validate implementation
Also enable the dEQP test that was blocked on that UNIMPLEMENTED call.
Bug: angleproject:2600
Change-Id: Iae1280d6e4f52c5b8e66c9f7fbaa9b2730c4eb0e
Reviewed-on: https://chromium-review.googlesource.com/1085693
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
e9465a61
|
2018-06-04T10:41:52
|
|
Vulkan: Fix wrong read ptr location when updating uniform block
Fixes these dEQP tests:
dEQP-GLES2.functional.state_query.shader.uniform_value_array
dEQP-GLES2.functional.shaders.indexing.uniform_array.vec2_*
dEQP-GLES2.functional.shaders.indexing.uniform_array.vec3_*
dEQP-GLES2.functional.shaders.struct.uniform.nested_struct_array*
dEQP-GLES2.functional.shaders.struct.uniform.loop_nested_struct_array*
dEQP-GLES2.functional.shaders.struct.uniform.dynamic_loop_nested_struct_array*
dEQP-GLES2.functional.uniform_api.value.assigned.by_value.get_uniform.multiple_nested_structs_arrays.*
dEQP-GLES2.functional.uniform_api.value.assigned.basic_array_assign_partial.multiple_basic_array.*
dEQP-GLES2.functional.uniform_api.value.assigned.basic_array_assign_full.multiple_basic_array.*
dEQP-GLES2.functional.uniform_api.value.assigned.by_value.get_uniform.multiple_basic_array.vertex
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.render.multiple_basic
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.basic_array_first_elem_without_brackets
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.multiple_basic.vertex
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.multiple_basic.fragment
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.multiple_basic.both
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.multiple_basic_array.*
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.multiple_nested_structs_arrays.*
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.struct_in_array.bool_*
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.get_uniform.basic_struct.bool_*
dEQP-GLES2.functional.uniform_api.info_query.unused_uniforms.*
dEQP-GLES2.functional.uniform_api.value.initial.get_uniform.multiple_basic.vertex
dEQP-GLES2.functional.uniform_api.value.initial.get_uniform.multiple_basic.fragment
dEQP-GLES2.functional.uniform_api.value.initial.get_uniform.multiple_basic.both
dEQP-GLES2.functional.uniform_api.value.initial.get_uniform.multiple_basic_array.*
dEQP-GLES2.functional.uniform_api.value.initial.get_uniform.multiple_nested_structs_arrays.*
dEQP-GLES2.functional.uniform_api.value.initial.render.basic_struct.*
dEQP-GLES2.functional.uniform_api.value.initial.render.struct_in_array.*
dEQP-GLES2.functional.uniform_api.value.initial.render.array_in_struct.*
dEQP-GLES2.functional.uniform_api.value.initial.render.multiple_basic_array.*
dEQP-GLES2.functional.uniform_api.value.initial.render.multiple_nested_structs_arrays.*
dEQP-GLES2.functional.uniform_api.value.initial.render.nested_structs_arrays.*
dEQP-GLES2.functional.uniform_api.value.assigned.unused_uniforms*
Bug: angleproject:2586
Change-Id: I51f619832424131b7c1eeff9589259b14cf4f358
Reviewed-on: https://chromium-review.googlesource.com/1085369
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
c8fbff3d
|
2018-06-04T10:30:48
|
|
Vulkan: Update uniforms bugfix and enable dEQP tests with it
If a uniform was already marked as dirty, and the call to
setMatrixUniform wasn't updating the data, the flag was flipped
to false, causing the descriptor set never to be initialized.
This enables these tests:
dEQP-GLES2.functional.shaders.conversions.scalar_to_matrix.*
Bug: angleproject:2583
Change-Id: I0bcb95cc66951e0ed347af5d874178c403a1c08a
Reviewed-on: https://chromium-review.googlesource.com/1085228
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
48cdc2e8
|
2018-05-31T09:58:34
|
|
Vulkan: Implement setUniform for matrices correctly
This fixes all these tests:
dEQP-GLES2.functional.shaders.functions.datatypes.float_mat*
dEQP-GLES2.functional.shaders.functions.datatypes.mat*
dEQP-GLES2.functional.shaders.linkage.varying_type_mat*
dEQP-GLES2.functional.shaders.matrix.*
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.render.basic.mat2_*
dEQP-GLES2.functional.uniform_api.value.assigned.by_pointer.render.basic.mat3_*
dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.*
dEQP-GLES2.functional.shaders.conversions.matrix_combine.*
dEQP-GLES2.functional.shaders.random.scalar_conversion*
Bug:angleproject:2581
Bug:angleproject:2583
Bug:angleproject:2584
Bug:angleproject:2588
Change-Id: Ib8c03397f0229432292c51f4a6332f954fc8fa12
Reviewed-on: https://chromium-review.googlesource.com/1080392
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
79216620
|
2018-05-29T19:19:54
|
|
Use stringstream with locale override.
Add test for compiling float literals in locales with comma decimal separators.
Handle inexplicable test setlocale failure on Android,Linux. (Require success on other platforms)
Skip setting the locale on Android, which is always C locale in C++, but for some
reason std::locale::classic isn't implemented as a no-op.
Bug: angleproject:2607
Test: angle_unittests
Change-Id: I7c97cb56c01335db46f532fb8af3f9a4f2a30564
Reviewed-on: https://chromium-review.googlesource.com/1077789
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2f3f4141
|
2018-05-30T08:27:19
|
|
Vulkan: Fix texture completeness issues
The fix is to skip updates that are queued that are not valid for the
current image description. We keep these around in case they are used
in a later usage of the same texture but we issue a warning telling the
user that memory will be used indefinitely until they use that data.
Bug: angleproject:2596
Change-Id: I8c20fffbd473ae8e2e9d2123a49b675b824a9bf6
Reviewed-on: https://chromium-review.googlesource.com/1078913
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
cbab2750
|
2018-05-31T18:49:31
|
|
DEPS.chromium: Sync dEQP to ANGLE (not Chromium) third_party.
Bug: 782846
Change-Id: I88af578dfd27fb69751138d9b263a148da9ecf23
Reviewed-on: https://chromium-review.googlesource.com/1081113
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a0cfa873
|
2018-05-30T21:12:17
|
|
GLES1: Shade model API
+ add sample
BUG=angleproject:2306
Change-Id: Ie0c391618ec2b771cc99b96db02b9008a86272b9
Reviewed-on: https://chromium-review.googlesource.com/1079992
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
32749b94
|
2018-05-30T19:24:18
|
|
GLES1: Alpha test
- Update test expectations
BUG=angleproject:2306
Change-Id: Ib49900c7c4d6b808ebfab9483d42d3fd98644f9e
Reviewed-on: https://chromium-review.googlesource.com/1079991
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
05cd6dfc
|
2018-05-24T15:51:29
|
|
Vulkan: generateMipmaps with vkCmdBlitImage when possible
Bug: angleproject:2502
Change-Id: Ib32a128a453749c59d751e996017a8a6e2a9972e
Reviewed-on: https://chromium-review.googlesource.com/1072550
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
4fef7738
|
2018-05-29T15:21:41
|
|
Add perf test for Error/Result class.
This is a performance test that stresses the Error class. It also is
used in tests for the new Result class.
Bug: angleproject:2575
Change-Id: Ie23c2a1ea74108d2ba72bf26f1db04e14f7eda64
Reviewed-on: https://chromium-review.googlesource.com/1077129
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c20b950e
|
2018-05-24T09:30:17
|
|
Vulkan: Fix clear of specific mip level was clearing all mip levels
Bug: angleproject:2502
Change-Id: Iffa012dce14584318c4dfd3d9b3a304291c9cebf
Reviewed-on: https://chromium-review.googlesource.com/1070666
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
22695bf5
|
2018-05-22T15:52:08
|
|
Vulkan: Support cube mimaps generation
Bug: angleproject:2502
Change-Id: I953d99d04608cec04aad824b8b38f388ed1e4c2b
Reviewed-on: https://chromium-review.googlesource.com/1069544
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c5181706
|
2018-05-17T09:44:42
|
|
Vulkan: generateMipmaps for 2D textures
- This implements cpu-only mipmaps generation.
To do in the next CLs:
- Cube textures support
- GPU faster path with vkCmdBlitImage
- Find the bug with clearing of level 0 mips.
- Investigate the intel linux specific bug.
Bug: angleproject:2502
Change-Id: Iecd73cb45ebc9c79ce6291c4529eb27330b51e2c
Reviewed-on: https://chromium-review.googlesource.com/1064194
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
0ed2aa23
|
2018-05-29T18:42:28
|
|
Vulkan: Fix expectations for android vulkan failures
Bug: angleproject:2557
Change-Id: I0efd2f7ed47e1848e49fb853dc7a06b3a44082bc
Reviewed-on: https://chromium-review.googlesource.com/1077567
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
95cce74a
|
2018-05-29T16:10:14
|
|
Vulkan: Add expectations for failing tests on Android
Bug: angleproject:2557
Change-Id: Ibf8abee5c292da460bf33485ab4699b5d70d51c7
Reviewed-on: https://chromium-review.googlesource.com/1077054
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b26ab825
|
2018-05-29T11:19:00
|
|
Return a program binary size of 0 when the program is not linked.
From the GLES3 spec:
"... When a program object's LINK_STATUS is FALSE, its program binary
length is zero ..."
Querying the size was generating errors in the GL backend.
BUG=angleproject:2569
Change-Id: I1be511040331abaec2bba98502d8aa88fb4bd19c
Reviewed-on: https://chromium-review.googlesource.com/1076317
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c2014bce
|
2018-05-28T16:09:04
|
|
Expose eglCreatePlatformWindowSurfaceEXT and eglCreatePlatformPixmapSurfaceEXT
These entry points are part of EGL_EXT_platform_base but were never returned by
eglGetProcAddress.
BUG=angleproject:2603
Change-Id: I4782df67fa8625a9af29a18df02af7b5fa73d75e
Reviewed-on: https://chromium-review.googlesource.com/1075469
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
1e91374e
|
2018-05-25T12:37:50
|
|
Vulkan: Enable every dEQP tests that are passing
- Also created bugs for each failing expectation to follow-up on.
- This CLs enable 8572 dEQP tests for Vulkan.
Bug: angleproject:2557
Change-Id: I7fba622994a5b0d884ba965bcbc2f807fefee9b4
Reviewed-on: https://chromium-review.googlesource.com/1073657
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
29523298
|
2018-05-28T15:01:43
|
|
Update dEQP EGL expectations for Mac.
BUG=angleproject:2546
Change-Id: I9485c701c6960f8abb60e763ad8b099933eaee81
Reviewed-on: https://chromium-review.googlesource.com/1075728
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1478afaf
|
2018-05-17T10:43:34
|
|
GLES1: Lighting and materials (renderer)
- Update test expectations
- Add gles1 sample app that shows simple lighting.
BUG=angleproject:2306
Change-Id: I545dcf860374abd9d628b0d554153cb634098f6d
Reviewed-on: https://chromium-review.googlesource.com/1065501
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
d0febe7a
|
2018-05-17T22:36:52
|
|
Reland "GLES1: Entry points for lighting and materials"
This is a reland of 4a09c1a245c406e402b3996b7ed33798b897e60f
Entry points have been autogenerated again.
Original change's description:
> GLES1: Entry points for lighting and materials
>
> - glLight*/glMaterial and their queries
> - Use new packed enums in these entry points, except for lightmodel
> which stays GLenum to be consistent with other generic glGet's
> - State.cpp: New glGet* queries related to light model and
> light/normal rescale enablement
> - GLES1State.cpp: Functions to get/set lighting/material state
> - Validation for lighting/materials
>
> + Add a few convenience methods to random_utils for sampling
> non-negative floats and a sampler for random booleans
>
> BUG=angleproject:2306
>
> Change-Id: If7ba0c0a0dc75f88fbaa986b904f1ea96ee6512e
> Reviewed-on: https://chromium-review.googlesource.com/1065502
> Commit-Queue: Lingfeng Yang <lfy@google.com>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Bug: angleproject:2306
Change-Id: I434273acd5200dd9f4925e239a032cc8db31a434
Reviewed-on: https://chromium-review.googlesource.com/1072849
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Lingfeng Yang <lfy@google.com>
|
|
d0a7d10f
|
2018-05-07T12:40:20
|
|
ES3.1: Set unordered access view related resource limits on D3D11
This patch sets the implementation-dependent resources limits related
to unordered access views (images, shader storage blocks, atomic
counter buffers and fragment shader outputs) on D3D11 back-ends.
For pixel shaders, the render targets and unordered access views share
the same resource slots when being written out, so we plan to allocate
these slots as follows:
- As there are 8 slots for UAVs and RTVs in feature level 11_0, currently
we assign 1 slot for atomic counter buffer and 7 slots that are shared
among images, shader storage blocks and fragment shader outputs.
- As there are 64 slots for UAVs and RTVs in feature level 11_1, currently
we assign 4 slots for atomic counter buffers and 60 slots that are
shared among images, shader storage blocks and fragment shader
outputs.
We also limit the maximum number of draw buffers to 7 if we create ES 3.1
context on D3D11 feature level is 11_0 because the value of combined shader
output resources is 7.
This patch also labels several dEQP cases from "FAIL" to "SKIP" because
since the resource limits on ssbos, atomic counter buffers and images
in rendering pipeline are set in D3D11 back-ends, the GLSL programs in
these cases can pass all the related link checks, thus these cases will
crash due to reaching the unimplemented parts when they are running on
ANGLE D3D11 back-ends.
BUG=angleproject:2345
TEST=dEQP-GLES31.functional.state_query.integer.max_compute_atomic_counter_buffers_*
dEQP-GLES31.functional.state_query.integer.max_compute_shader_storage_blocks_*
dEQP-GLES31.functional.state_query.integer.max_atomic_counter_buffer_bindings_*
dEQP-GLES31.functional.state_query.integer.max_combined_atomic_counter_buffers_*
dEQP-GLES31.functional.state_query.integer.max_image_units_*
dEQP-GLES31.functional.state_query.integer.max_combined_image_uniforms_*
dEQP-GLES31.functional.state_query.integer.max_shader_storage_buffer_bindings_*
dEQP-GLES31.functional.state_query.integer.max_combined_shader_storage_blocks_*
dEQP-GLES31.functional.state_query.integer.max_combined_shader_output_resources_*
Change-Id: I56a4e6c60d4f6f5bd6f238ae8ce425fb5072a4a3
Reviewed-on: https://chromium-review.googlesource.com/1046372
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
5f9482f4
|
2018-05-18T09:00:09
|
|
ES31: Implement FramebufferTextureEXT entry point
This patch adds the entry point and related validation for
FramebufferTextureEXT defined in OpenGL ES 3.1 extension
EXT_geometry_shader.
BUG=angleproject:1941
TEST=angle_end2end_tests
Change-Id: Id6804e0b3971f52273562ce1a325d8377926a558
Reviewed-on: https://chromium-review.googlesource.com/1069842
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b2eda420
|
2018-05-24T19:14:48
|
|
dEQP: Add attrib init helper function.
This removes a lot of repeated code in tcuANGLEPlatform.cpp.
Bug: angleproject:2552
Change-Id: Ie4cc53af2dfdf719b78d272cbd260cab5b2efd7b
Reviewed-on: https://chromium-review.googlesource.com/1064196
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
14eb89c6
|
2018-05-17T15:16:27
|
|
dEQP: Add EGL 1.5 getPlatformDisplay.
This will allow us to pass pointers in the attributes list. This is
helpful for the angle::Platform init code.
Bug: angleproject:2552
Bug: angleproject:2564
Change-Id: I388d907ad543a61f357c0a51e8242942118bdaea
Reviewed-on: https://chromium-review.googlesource.com/1064195
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4428d395
|
2018-05-17T15:16:27
|
|
dEQP: Abort gtest run on exception.
Prevents massive infra failures when the tests are all broken.
This also gives the GoogleTest harness the ability to handle different
test result types.
Bug: angleproject:2552
Change-Id: Id9832e8557e2ee4e6a248a27729f67a81bf2d830
Reviewed-on: https://chromium-review.googlesource.com/1064014
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
668e507f
|
2018-05-24T17:12:14
|
|
Revert "GLES1: Entry points for lighting and materials"
This reverts commit 4a09c1a245c406e402b3996b7ed33798b897e60f.
Reason for revert: Seems to break the build
Original change's description:
> GLES1: Entry points for lighting and materials
>
> - glLight*/glMaterial and their queries
> - Use new packed enums in these entry points, except for lightmodel
> which stays GLenum to be consistent with other generic glGet's
> - State.cpp: New glGet* queries related to light model and
> light/normal rescale enablement
> - GLES1State.cpp: Functions to get/set lighting/material state
> - Validation for lighting/materials
>
> + Add a few convenience methods to random_utils for sampling
> non-negative floats and a sampler for random booleans
>
> BUG=angleproject:2306
>
> Change-Id: If7ba0c0a0dc75f88fbaa986b904f1ea96ee6512e
> Reviewed-on: https://chromium-review.googlesource.com/1065502
> Commit-Queue: Lingfeng Yang <lfy@google.com>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,jmadill@chromium.org,cwallez@chromium.org,lfy@google.com
Change-Id: Ifabd708ded87c7484ad6d466508e2c2d6ea2557c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2306
Reviewed-on: https://chromium-review.googlesource.com/1071828
Reviewed-by: Lingfeng Yang <lfy@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4a09c1a2
|
2018-05-17T22:36:52
|
|
GLES1: Entry points for lighting and materials
- glLight*/glMaterial and their queries
- Use new packed enums in these entry points, except for lightmodel
which stays GLenum to be consistent with other generic glGet's
- State.cpp: New glGet* queries related to light model and
light/normal rescale enablement
- GLES1State.cpp: Functions to get/set lighting/material state
- Validation for lighting/materials
+ Add a few convenience methods to random_utils for sampling
non-negative floats and a sampler for random booleans
BUG=angleproject:2306
Change-Id: If7ba0c0a0dc75f88fbaa986b904f1ea96ee6512e
Reviewed-on: https://chromium-review.googlesource.com/1065502
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2b0cdcc1
|
2018-05-02T08:02:50
|
|
Implement EGL_ANGLE_explicit_context
Implementation of EGL_ANGLE_explicit_context. Includes new libGLESv2 entry
points and exports, libANGLE entry points, extension declarations for
eglGetProcAddress, and unit tests. Autogeneration scripts have been
modified to produce entry points, exports, eglGetProcAddress function
table, extension function pointers, and function declarations.
Bug:angleproject:1395
Change-Id: I1b79c6069bbed05beb4700a32139a64ddc465c4c
Reviewed-on: https://chromium-review.googlesource.com/1039865
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
2a12b3d5
|
2018-05-23T13:42:13
|
|
ES31: Add struct uniform block support in compute shader for D3D
BUG=angleproject:2577
TEST=angle_end2end_tests
Change-Id: I4d84a10508458444d559013e658ae88cd2923f91
Reviewed-on: https://chromium-review.googlesource.com/1069989
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
be7f44fb
|
2018-05-21T14:35:32
|
|
Vulkan: Use push constant for masked clear color
Storing the color in an uniform buffer, and updating it by
vkCmdUpdateBuffer can hit a driver bug. Using vkCmdPushConstants
instead can workaround this bug. Besides, push constant is expected
to outperform memory-backed resource update according to the vkspec
(section 13.2.6).
Bug: angleproject:2547
Change-Id: I319cd8e07e0a1d0cb56005b78a46466d9fca436e
Reviewed-on: https://chromium-review.googlesource.com/1067247
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
b1e91380
|
2018-05-17T14:33:55
|
|
ES31: Implement EXT_geometry_shader framebuffer default layers on OpenGL
This patch implements FRAMEBUFFER_DEFAULT_LAYERS_EXT as a legal framebuffer
parameter required in OpenGL ES 3.1 extension EXT_geometry_shader on OpenGL
back-ends.
The query on FRAMEBUFFER_DEFAULT_LAYERS_EXT specifies the layer count used
when the framebuffer has no attachments.
BUG=angleproject:1941
TEST=dEQP-GLES31.functional.geometry_shading.query.framebuffer_default_layers
Change-Id: I888465dfe23da53541ec2fedb8616027df532466
Reviewed-on: https://chromium-review.googlesource.com/1063560
Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
|
|
9b1462a0
|
2018-05-21T16:40:57
|
|
Roll fwd ANGLE chromium DEPs
Roll build, buildtools, clang, testing, googletest, zlib, gyp.
Bug: angleproject:2560
Change-Id: Ic7f2a8bbdb9f6ff3bca1cd6d7ba424add7d086ad
Reviewed-on: https://chromium-review.googlesource.com/1068064
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
31d3deb4
|
2018-05-18T18:32:16
|
|
Add `formatType` arg to computeSkipBytes.
Fix texture upload format tests:
- Format tests should definitely run on ES3 also.
- Also set filters to NEAREST since some formats aren't filterable.
- Fix RGB9_E5 test reference encoding and add a test for it.
- True int/uint textures require i/usamplers.
Bug: angleproject:2576
Change-Id: Ia5bac34cdee6554a88db339de443689a71a0cf70
Reviewed-on: https://chromium-review.googlesource.com/1068142
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
be4a3683
|
2018-05-17T15:16:27
|
|
dEQP: Use overload of CreateWindow.
This allows us access to the EGLDisplay handle. This will be useful for
passing along an error logging function.
Bug: angleproject:2552
Change-Id: I98a170f419d728ca93558954be4e5c0511b0316b
Reviewed-on: https://chromium-review.googlesource.com/1062790
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9b1a9084
|
2018-05-17T15:16:26
|
|
dEQP: Format display factory and clean up style.
This fixes a bunch of minor style issues.
Bug: angleproject:2552
Change-Id: If0e8130cf85deb176a5dcbca568cca477d2c1068
Reviewed-on: https://chromium-review.googlesource.com/1062789
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1ce8aede
|
2018-05-17T09:19:05
|
|
dEQP: Shorten test case names.
Instead of dEQP_GLES2.Default/functional.blah...
Use dEQP.GLES2/functional.blah...
This makes them a bit easier to parse and reconstruct from memory.
Bug: angleproject:2557
Change-Id: I092dc6ef10d4451ddafe373e699a5d35247f8785
Reviewed-on: https://chromium-review.googlesource.com/1062065
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f299a378
|
2018-05-14T14:44:54
|
|
Vulkan: Implement copyImage and enable all tests for it
Bug: angleproject:2500
Change-Id: I9066861ed4db0330754b32995ed82c658d66a590
Reviewed-on: https://chromium-review.googlesource.com/1058034
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
daf7ace5
|
2018-05-14T13:44:15
|
|
Vulkan: Finish implementation of the copySubImage
- Enables all dEQP tests left for copySubImage.
Bug: angleproject:2501
Change-Id: I8ae301a94e9039f24e0a20b8fd4afdf7e65659f7
Reviewed-on: https://chromium-review.googlesource.com/1057904
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a1c72423
|
2018-05-14T15:58:28
|
|
Vulkan: Implement PACK_STATE dirty bit and remove warning
- also enables all dEQP tests for functional.read_pixels.*
Bug: angleproject:2480
Change-Id: Ib7bcd6b046ff8b0ecf110e70f735036bedf17902
Reviewed-on: https://chromium-review.googlesource.com/1058149
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
21386a34
|
2018-05-16T12:34:06
|
|
dEQP: Implement --deqp-case for GTest.
This parses the dEQP test name into a GoogleTest-friendly gtest_filter
automatically. This makes pasting in test case names from the
expectations file more straight-forward.
Bug: angleproject:2557
Change-Id: Ib5fbb46ad487a89352d728aebedc1752ddb0673d
Reviewed-on: https://chromium-review.googlesource.com/1058252
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
018709fd
|
2018-05-10T13:53:11
|
|
Vulkan: Basic support of copySubImage
- Implement basic path that does a cpu readback for everything and
establish conformance for every case except the ones that need
conversion.
- Enables most copy sub image dEQP tests.
Bug: angleproject:2501
Change-Id: Ib67c184894625dde850f320c40fe51fe70ba974f
Reviewed-on: https://chromium-review.googlesource.com/1054387
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e943df22
|
2018-05-15T12:14:25
|
|
Add more dEQP EGL expectations for Linux and Android.
BUG=angleproject:2546
Change-Id: Id81203cd42227f6df34edfcefdd312037826d55f
Reviewed-on: https://chromium-review.googlesource.com/1059940
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
80c32ccb
|
2018-04-25T09:48:36
|
|
ES31: Add extra transform feedback rules in EXT_geometry_shader
This patch adds the additional transform feedback rules required in
EXT_geometry_shader. In this extension, more draw commands and render
primitives are allowed for transform feedback.
BUG=angleproject:1941
TEST=dEQP-GLES31.functional.geometry_shading.vertex_transform_feedback.*
angle_end2end_tests
Change-Id: Iedc27dca5c24ca45cd4226a1a0066107c0b40e1d
Reviewed-on: https://chromium-review.googlesource.com/1055192
Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
|
|
01e83581
|
2018-05-15T12:28:01
|
|
Add dEQP EGL expectations OpenGL on Windows.
BUG=angleproject:2546
Change-Id: I3ffc33649bad26f9d12580e398777b8b6c8ad542
Reviewed-on: https://chromium-review.googlesource.com/1059711
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
966cd507
|
2018-05-15T10:58:48
|
|
Add more dEQP EGL expectations for Linux and Android.
BUG=angleproject:2546
Change-Id: I9ece2b5b38217afa43ba7f120ef311c2cf3ca4cb
Reviewed-on: https://chromium-review.googlesource.com/1059700
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
b0dde4b9
|
2018-05-14T18:17:21
|
|
dEQP: Clean up some style in gTest source.
Bug: angleproject:2557
Change-Id: Ica29c686ad3a71da3f8564f8a78bbe4f57ce304f
Reviewed-on: https://chromium-review.googlesource.com/1058251
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a00ef314
|
2018-05-14T17:07:22
|
|
Add more dEQP EGL expectations for Linux and Android.
BUG=angleproject:2546
Change-Id: I911842753e8065de8e86f0af1f6cdf2a388fec63
Reviewed-on: https://chromium-review.googlesource.com/1058280
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
5730c0bf
|
2018-05-14T15:48:31
|
|
Add more dEQP EGL expectations for Linux and Android.
BUG=angleproject:2546
Change-Id: I9b62ef6331c03d185feaa91ad4f21f9a1380186f
Reviewed-on: https://chromium-review.googlesource.com/1058147
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e35831d3
|
2018-05-14T14:05:26
|
|
Add more dEQP EGL expectations for Linux and Android.
BUG=angleproject:2546
Change-Id: I996c1344c93be7618ffbedd3e34e9aaa4855e25e
Reviewed-on: https://chromium-review.googlesource.com/1057989
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
baa60994
|
2018-05-14T12:46:17
|
|
DEQP: Print not supported messages from tests.
BUG=angleproject:2546
Change-Id: I74b376c07f94d77abe28129ff5e97bd19a26d0d0
Reviewed-on: https://chromium-review.googlesource.com/1057831
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
bb7707f3
|
2018-05-14T12:38:44
|
|
Add dEQP EGL test expectations for Linux and Android.
BUG=angleproject:2546
Change-Id: I81c9786eccf50962b2928333272cee3eb556e707
Reviewed-on: https://chromium-review.googlesource.com/1057869
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
78cd9405
|
2018-05-10T16:49:58
|
|
Vulkan: Implement masked color clear with depth.
This fixes an edge case when the app clears both color and depth at the
same time when a color mask is set. It also handles stencil clear, but
does not handle stencil masks.
Includes test suppressions for a few platforms that may have driver
bugs.
Bug: angleproject:2455
Bug: angleproject:2547
Bug: angleproject:2548
Change-Id: I5ac0a461a075328e5fc4e5e262c4d21f68f93434
Reviewed-on: https://chromium-review.googlesource.com/1052072
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
461b09a8
|
2018-04-23T09:02:09
|
|
GLES1: Renderer (minimal)
This is the renderer code for GLES1 that delivers basic vertex
attributes, matrices, and allows texturing for unit 0 only (more units
mean implementing the multitexturing pipeline).
+ Sample
+ Update test expectations for GLES1 conformance tests
BUG=angleproject:2554
BUG=angleproject:2306
Change-Id: I398edc764f982fbfc4c5e0f9d6bfef1e91aec47c
Reviewed-on: https://chromium-review.googlesource.com/1057356
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Lingfeng Yang <lfy@google.com>
|
|
66aafcb4
|
2018-05-12T19:21:31
|
|
Revert "GLES1: Renderer (minimal)"
This reverts commit a69099212f7b3be8e6113ba349eee56af589f3de.
Reason for revert: New tests failing on gpu fyi bot. anglebug.com/2554
Original change's description:
> GLES1: Renderer (minimal)
>
> This is the renderer code for GLES1 that delivers basic vertex
> attributes, matrices, and allows texturing for unit 0 only (more units
> mean implementing the multitexturing pipeline).
>
> + Sample
> + Update test expectations for GLES1 conformance tests
>
> BUG=angleproject:2306
>
> Change-Id: Id5d5603c967e577290085e5946f2cb7a03d7e017
> Reviewed-on: https://chromium-review.googlesource.com/1023988
> Commit-Queue: Lingfeng Yang <lfy@google.com>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,jmadill@chromium.org,cwallez@chromium.org,lfy@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: angleproject:2306
Change-Id: Ib6fd9db433cd1a13589d5a9e82cb2c40f3cf71ff
Reviewed-on: https://chromium-review.googlesource.com/1056229
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
18e323ab
|
2018-05-11T16:54:17
|
|
D3D11: Fix out-of-range access with robust access.
When using a vertex buffer with DYNAMIC usage, with robust buffer
access enabled, we would sometimes read out-of-bounds when using very
large values for the index range. An unchecked signed addition would
overflow and lead to reading a negative offset.
Fix this problem by keeping the value size_t whenever possible. Also do
clamped casts when converting to a smaller values.
Also adds a regression test.
Bug: chromium:842028
Change-Id: Ie630ac857c6acfc0bace849a03eebfbaa2fbe89a
Reviewed-on: https://chromium-review.googlesource.com/1055928
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2cfc4f50
|
2018-05-11T11:42:13
|
|
Request EGL_DONT_CARE version instead of 0 on GL NULL configs.
This caused the backends to fail native context creation and skip tests
on these configs.
BUG=angleproject:2464
Change-Id: I04922853a33c4bd8b38c87145f65431d8eb3db10
Reviewed-on: https://chromium-review.googlesource.com/1054482
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
a6909921
|
2018-04-23T09:02:09
|
|
GLES1: Renderer (minimal)
This is the renderer code for GLES1 that delivers basic vertex
attributes, matrices, and allows texturing for unit 0 only (more units
mean implementing the multitexturing pipeline).
+ Sample
+ Update test expectations for GLES1 conformance tests
BUG=angleproject:2306
Change-Id: Id5d5603c967e577290085e5946f2cb7a03d7e017
Reviewed-on: https://chromium-review.googlesource.com/1023988
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
81307a31
|
2018-05-09T13:35:03
|
|
Update dEQP GLES2 expectations for Android Vulkan backend
Bug: 839893, angleproject:2549, angleproject:2550
Change-Id: Id51ad7df2dc225eb6d4e8d4a8668e7e2295d2fa3
Reviewed-on: https://chromium-review.googlesource.com/1054581
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
90968360
|
2018-05-04T08:47:22
|
|
Vulkan: Incomplete textures support
2D multisample is out of scope since its ES 3 only.
Bug: angleproject:2499
Change-Id: Id5f81d713a2882ba2a91b7d3f281d71a3e9289f4
Reviewed-on: https://chromium-review.googlesource.com/1046786
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
61859817
|
2018-05-09T14:17:39
|
|
Vulkan: Fix use-after-free with DynamicBuffer.
The implementation of DynamicBuffer before my changes could have some
issues in the following use case:
- Allocate buffer 1 for Texture 1 (with size as big as the full buffer
size)
- Allocate buffer 2 for Texture 2 (triggers creation of a new underlying
BufferVk and releases the buffer 1 to the Renderer)
- Render with Texture 2 (texture 1 hasn't been flushed yet)
- swap buffers (causes garbage in the renderer to be cleaned up)
- Try rendering with Texture 1, and you'll get an error stating that
the buffer we're trying to copy is not valid (because its already been
freed).
This set of changes:
- Add a new test that specifically triggers this case.
- enables the texture.filtering.cube* tests in dEQP.
- Fixes the issue by adding a manual releasing pattern of the buffers
in DynamicBuffer.
Bug: angleproject:2505
Change-Id: I207ce4a694016766f008cca67d82b252f460e0df
Reviewed-on: https://chromium-review.googlesource.com/1052551
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
a932b6b5
|
2018-05-01T07:53:17
|
|
Vulkan: Fix in DynamicBuffer, allocating too many buffers for no reason
-Enables more dEQP tests in functional.texture.filtering
-texture.filtering.cube.* tests don't work yet, another CL will be
targeted at fixing that after this one.
Bug: angleproject:2505
Change-Id: Ic634e0deafa54e8e8ebd0efbdae14263ffdbcef0
Reviewed-on: https://chromium-review.googlesource.com/1037183
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
7348fc5b
|
2018-05-09T07:17:16
|
|
Vulkan: Clear to opaque black instead of transparent
This is a problem when we emulate RGB8 with RGBA8.
Bug: angleproject:2536
Change-Id: I5665e513ef0138bc56f52ba35342378d8392989f
Reviewed-on: https://chromium-review.googlesource.com/1051687
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
fa7503ca
|
2018-05-08T11:25:06
|
|
Vulkan: Support EXT_texture_storage
This is a prerequisite to support incomplete textures.
Bug: angleproject:2536
Change-Id: Ica40bbd185a67253f457148007b08f6735da788c
Reviewed-on: https://chromium-review.googlesource.com/1050308
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
67d2cd07
|
2018-05-07T10:27:22
|
|
Issue a clearer warning about negative modulus operands
This also adds unit tests for negative modulus operands.
BUG=chromium:839468
TEST=angle_unittests
Change-Id: I6ab5959ba4f7045d2bde71d246695ef0983c5608
Reviewed-on: https://chromium-review.googlesource.com/1046055
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
e95a7f07
|
2018-05-08T13:24:15
|
|
Make EGLThreadTest cross-platform.
BUG=angleproject:2464
Change-Id: Ib2a43bc8e2da467f49e8938c386a5e867c80d5bc
Reviewed-on: https://chromium-review.googlesource.com/361921
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c0a403e2
|
2018-05-08T18:55:54
|
|
Revert "ANGLETest: Reuse test windows per-renderer"
This reverts commit fad918f85445f19bc2aa6e6b3ee52f104690ff2a.
Reason for revert: attempt to fix anglebug.com/2537
Original change's description:
> ANGLETest: Reuse test windows per-renderer
>
> When running angle_end2end_tests unfiltered with the OpenGL and Vulkan
> backends enabled, the test window was recreated all the time and grabbed
> focus every-time it was created. This made it impossible to do anything
> with the machine running the tests.
>
> Fix this by having one OSWindow per renderer group that's lazily created:
> this solves most of the issue since only a couple windows end up being
> created, and at the beginning of the test suite.
>
> BUG=
>
> Change-Id: I7a51300f0d59d8b6bb79e54d20b3acbf01068002
> Reviewed-on: https://chromium-review.googlesource.com/1038433
> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
TBR=geofflang@chromium.org,jmadill@chromium.org,cwallez@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I93bdfa38757cbe2a6ce939c0c3e3da806307e7dd
Reviewed-on: https://chromium-review.googlesource.com/1050326
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
3b9b027c
|
2018-04-30T16:27:24
|
|
Add basic tests of (unsafe) multithreaded contexts.
BUG=angleproject:2464
Change-Id: Ia0f0788a1bc4d2ecd883b058f15c629cac5fd166
Reviewed-on: https://chromium-review.googlesource.com/1036063
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9f394f8c
|
2018-05-07T15:42:25
|
|
Fix use-after-free in drawQuad with useVertexBuffer false
quadVertices.data() pointer needs to remain valid until drawArrays
is called. To guarantee that quadVertices should stay in the stack
until the end of drawQuad().
BUG=angleproject:2533
TEST=angle_end2end_tests
Change-Id: I263262db9a9ed9c9cd0d8679addd09677ad7179e
Reviewed-on: https://chromium-review.googlesource.com/1046600
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
fad918f8
|
2018-05-07T09:17:30
|
|
ANGLETest: Reuse test windows per-renderer
When running angle_end2end_tests unfiltered with the OpenGL and Vulkan
backends enabled, the test window was recreated all the time and grabbed
focus every-time it was created. This made it impossible to do anything
with the machine running the tests.
Fix this by having one OSWindow per renderer group that's lazily created:
this solves most of the issue since only a couple windows end up being
created, and at the beginning of the test suite.
BUG=
Change-Id: I7a51300f0d59d8b6bb79e54d20b3acbf01068002
Reviewed-on: https://chromium-review.googlesource.com/1038433
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
983460e6
|
2018-05-02T17:57:39
|
|
Rewrite repeated assignments to swizzled vectors on NVIDIA
This works around the most common instances of a bug that reproduces
on some NVIDIA OpenGL drivers prior to version 397.31.
BUG=chromium:798117
TEST=angle_end2end_tests
Change-Id: Iafc6a9a64e56fa98b42117149fe6867040e932e5
Reviewed-on: https://chromium-review.googlesource.com/1042190
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7a8fe156
|
2018-04-28T12:59:58
|
|
ES31: Add link validation on MAX_COMBINED_SHADER_OUTPUT_RESOURCES
This patch adds the link validation on the maximum combined shader
output resources required in OpenGL ES 3.1 SPEC.
OpenGL ES 3.1 SPEC has restrictions on the sum of the number of all
active images, shader storage blocks and fragment shader outputs. A
link error will be generated if this sum exceeds the implementation-
dependent value of MAX_COMBINED_SHADER_OUTPUT_RESOURCES.
In order not to affect the existing image tests, this patch also
sets a temporary value for maxCombinedShaderOutputResources on D3D11
back-ends. We will set more accurate values for all the UAV related
resource limits in the next patch.
BUG=angleproject:2345
TEST=dEQP-GLES31.functional.state_query.integer.max_combined_shader_output_resources_*
Change-Id: Ib83a19ef0ae0b9af3422b5c970c7c07d96b2359d
Reviewed-on: https://chromium-review.googlesource.com/1039155
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
d7b56642
|
2018-04-27T16:59:36
|
|
Fix blit rect calculations on D3D11 backend
The D3D11 backend used to calculate the blit areas incorrectly when
the source blit area provided via the API stretched outside the source
framebuffer in all directions.
This is now fixed and the code is also simplified.
BUG=angleproject:2521
TEST=angle_end2end_tests
Change-Id: I46d5de27464a8455b3956c0be598f75550ca1616
Reviewed-on: https://chromium-review.googlesource.com/1032787
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
aae572a5
|
2018-04-28T15:14:31
|
|
Disable avoid1BitAlphaTextureFormats workaround on Intel
avoid1BitAlphaTextureFormats workaround was added to angle in 288584
due to an old driver bug on Intel and AMD that 1-bit alpha always
rounds up when converting from float to unsigned int. The workaround
uses rgba8 instead of *a1 to avoid the driver bug and optimizes precision.
However, this workaround brings a new issue because 1-bit alpha can only
represent u0 or u1 while 8 bits alpha covers from u0 to u255. For
example, if we expect to render to a rgb5_a1 renderbuffer, the expected
alpha value should be 0 or 255, but actually get a value between 0 and
255 which is incorrect. The current Intel drivers have fixed the old
driver bug. So we suggest to disable this workaround for Intel drivers.
TEST=dEQP_GLES2.Default/functional_fbo_render_color_clear_rbo_rgb5_a1_depth_component16_stencil_index8
--deqp-egl-display-type=angle-gl
BUG=angleproject:2349
Change-Id: I14933f92fa27031ff7442fa437f77a3c67f2f1db
Reviewed-on: https://chromium-review.googlesource.com/1034163
Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
03bb2231
|
2018-05-03T15:21:20
|
|
Add test for D3D11 nested floor() bug
The test fails on D3D11, which seems to ignore floor() calls if
they're nested in a particular way with magic multipliers inside.
BUG=chromium:838885
TEST=angle_end2end_tests
Change-Id: I2c8749defa923553bfee69149da15f8e4ddf5096
Reviewed-on: https://chromium-review.googlesource.com/1041959
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
c6dbc253
|
2018-04-30T19:07:56
|
|
Scope ANGLE_UNUSED_VARIABLE.
Renames the macro to be more ANGLE-ey.
Refactoring only.
Bug: angleproject:1671
Change-Id: I8f2dd227c7e2025886ec66e85efa877ea261d0ad
Reviewed-on: https://chromium-review.googlesource.com/1036209
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ad3ae90a
|
2018-03-09T13:40:42
|
|
Use packed enums for QueryType.
BUG=angleproject:2169
Change-Id: I129a9d8e295859daa071a298dab9fe1895315cc0
Reviewed-on: https://chromium-review.googlesource.com/957318
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
9aef3670
|
2018-04-27T11:45:06
|
|
Vulkan: Implement masked color clears.
This implements masked color clear using clear shaders. The shaders
themselves were introduced in a prior patch. In order to get the
right setup for the draw call to trigger the shaders, we create
an internal pipeline from the pipeline cache. We also use a special
pipeline layout with only uniform buffers. The masked out color
channels are disabled via settings on the pipeline.
This fixes the dEQP masked color clear tests. It doesn't handle
masked color clears combined with the depth clear bit. It's likely
we don't have test coverage for this case.
Bug: angleproject:2455
Change-Id: I513248cc0f7e58f490fc16ac9afb40119d730ccc
Reviewed-on: https://chromium-review.googlesource.com/1031373
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9aef81c7
|
2018-04-30T14:56:15
|
|
Validate blitFramebuffer for overflows on all platforms
We can validate to avoid triggering driver issues even if the native
GLES spec is not telling us to.
This will fix WebGL in Chromium when it's being run with the
--use-cmd-decoder=validating --use-angle=gl config.
BUG=chromium:830046
TEST=WebGL conformance tests
Change-Id: I2d61182cb6cbe46b52e1d9b7ed6b4035defee082
Reviewed-on: https://chromium-review.googlesource.com/1033743
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
41529e5e
|
2018-05-01T10:06:04
|
|
Refactor StateChangeTests to use essl1_shaders instead
Bug: angleproject:2474
Change-Id: Ia558c2e266422f8f8b55523c9542379688a7058d
Reviewed-on: https://chromium-review.googlesource.com/1037164
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
94ae660d
|
2018-04-23T13:58:59
|
|
Vulkan: Create tests to validate we created the pipeline when needed
1- Link program with a shader and draw with it, relink with another shader and draw again.
2- Release program that is reading from a uniform.
Bug: angleproject:2397
Change-Id: Icb4211c5cf71efaf41833d9d5afd83ce8410c598
Reviewed-on: https://chromium-review.googlesource.com/1028580
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c6f82872
|
2018-04-24T14:14:50
|
|
ES31: Add REFERENCED_BY_GEOMETRY_SHADER as program interface property
This patch implements GL_REFERENCED_BY_GEOMETRY_SHADER as a valid
property of program interfaces.
BUG=angleproject:1941
TEST=angle_end2end_tests
dEQP-GLES31.functional.geometry_shading.query.referenced_by_geometry_shader
Change-Id: Id9659313d371dbfc7d00bf9d816df4449fbf29ec
Reviewed-on: https://chromium-review.googlesource.com/1025281
Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
|
|
69643438
|
2018-04-27T12:23:47
|
|
D3D11: Reorder VAO synchronization.
The index range was being resolved in the call to
VertexArray11::syncStateForDraw but the code which invalidates the input layout
was being executed before this.
BUG=837002
Change-Id: I4e00b53cdc51f8758b0e2ba9e2dfc93b5e22556c
Reviewed-on: https://chromium-review.googlesource.com/1032633
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f1bcd017
|
2018-04-27T14:21:55
|
|
Supress failures in BlitFramebufferTest.MultisampleDepth on Mac OpenGL
BUG=837717
Change-Id: I1ac659b18bd9aef2f24f798d23f49d1efbb81938
Reviewed-on: https://chromium-review.googlesource.com/1033478
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
de279590
|
2018-04-26T12:25:13
|
|
Add test coverage for BlitGL
Scaling and flipping of the framebuffer with blitFramebuffer are now
covered by end2end_tests. The test configurations are set so that the
BlitGL shader-based blit is also covered.
The tests reveal a bug in the D3D11 backend implementation of
blitFramebuffer when using an oversized source area.
BUG=angleproject:2486
BUG=angleproject:2519
BUG=angleproject:2521
TEST=angle_end2end_tests
Change-Id: Ica48e564a5b4180241ec4c4c6be06c58cc6dc29b
Reviewed-on: https://chromium-review.googlesource.com/1030171
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
b221486a
|
2018-04-26T07:25:48
|
|
Vulkan: Fix TexSubImage2D state change test.
Was simply a matter of triggering a new write node in the subImage
call.
Bug: angleproject:2495
Change-Id: I06334ba6ee816f671e5c599c8e8f079f56adb25e
Reviewed-on: https://chromium-review.googlesource.com/1028729
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
0086de17
|
2018-04-25T11:41:32
|
|
Vulkan: Add test to reproduce graph issue when draw->subImage->draw
Bug: angleproject:2495
Change-Id: Ibc6c060e8924f19562da62ce15d48d9f6820b372
Reviewed-on: https://chromium-review.googlesource.com/1028228
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
197d5294
|
2018-04-25T14:29:00
|
|
Wrap all preprocessor code in the angle namespace.
BUG=836820
BUG=801364
Change-Id: I08b6a2f9f12b689e09df6efd916c313e71e8a051
Reviewed-on: https://chromium-review.googlesource.com/1028581
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|