|
e33c1582
|
2019-11-06T16:55:29
|
|
Fix EXT_texture_norm16
* Add norm16 format info for OpenGL backend
* Add validation for newly introduced norm16 formats
* Fix some logic of texture tests
Bug: chromium:1000354, angleproject:1365
Change-Id: Ie6d6e5e276da4df4b7c667be28d324d4976b35ec
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1902720
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shrek Shao <shrekshao@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
16da9515
|
2019-11-04T11:19:14
|
|
Vulkan:ImageHelper read combined DS textures
Update ImageHelper to be able to copy both the depth and stencil
aspects of a DS image to a buffer. The aspects are copied separately
with the depth data preceding the stencil data.
This allows dEQP-GLES31.functional.stencil_texturing.misc.base_level
test to pass. Added exception for ANDROID VULKAN where test still
fails and new tracking bug (4080) for this case.
Bug: angleproject:3949
Bug: angleproject:4080
Change-Id: Ib6104d7fa9f516154131f3e82161078ba216cfe1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1897649
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
19dd51b0
|
2019-11-04T11:28:19
|
|
GL: Expose PBO extensions
Ensure WebGLCompatibilityTest.EnablePixelBufferObjectExtensions functions
in surfaceless mode by creating a framebuffer to do the test glReadPixels
from.
BUG=angleproject:4079
Change-Id: I109b3cdeb85625a6a97832ecf8130d53a4074af9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1893058
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
df415528
|
2019-10-24T09:22:39
|
|
Vulkan: Enable VK_IMAGE_USAGE_STORAGE_BIT when it is needed
VK_IMAGE_USAGE_STORAGE_BIT is always enabled for vkImage, this
increases memory bandwidth in some platforms.
This CL changes the behavior to enable VK_IMAGE_USAGE_STORAGE_BIT
when necessary.
Bug: angleproject:3904
Test: angle_end2end_tests
Test: angle_deqp_gles2_tests
Change-Id: I8ffd37efa8d99d04328fa6232de0755be3273d9e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1857799
Commit-Queue: Sunny Sun <sunny.sun@arm.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
28b0c453
|
2019-10-11T15:22:02
|
|
New end2end test to print EGL information
Print out EGL vendor, version, clients, clent extensions, display extensions
Print GL vendor, version, renderer, shader, extensions
Prints each EGL config ID and its attributes
Just Vulkan based information. D3D and GL can be enabled.
Bug: angleproject:4039
Test: angle_end2end_tests --gtest_filter=EGLPrintEGLinfoTest*
Change-Id: I103a22eacb2eb14547d7908f93eeeca5434c5e66
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879492
Commit-Queue: Jeff Vigil <j.vigil@samsung.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
422ebad2
|
2019-10-31T16:02:48
|
|
Fix ANGLE_get_image cube map handling.
Was missing a layer parameter. Also includes a regression test.
Also updates incomplete texture handling in Vulkan. Will try to sync
the texture storage if the texture has never been used.
Bug: angleproject:3944
Change-Id: I5fcd6931f9cb9e008faaeaecb1f6df275a2af73f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1894142
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
35f74cd6
|
2019-10-31T16:47:10
|
|
Reorder BaseVertexBaseInstance draw calls parameters
To match the parameter order of MultiDraw* calls.
And potentially expose in chromium directly with ANGLE_ prefix.
Bug: angleproject:3402, chromium:891861
Change-Id: I19548f4c3c7faa422e43905850b218039de43015
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1894241
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
841b0167
|
2019-10-30T18:08:53
|
|
Suppress flaky dEQP-GLES3 test on Win7 NVIDIA D3D11
dEQP-GLES3.functional.rasterization.flatshading.triangles
Bug: angleproject:4070
Change-Id: I8bdba9d1b9d3c04df42a6c90fa106cf7e8b1a018
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1890729
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
bb35bb4e
|
2019-10-29T17:17:04
|
|
Vulkan: Implement simple case ANGLE_get_image.
A couple cases are left unimplemented:
Incomplete/unused Textures. This leads to a slightly more tricky
implementation. Since we need to read back from the staging buffer
we will need to flush the Image contents to a temporary buffer.
Depth/stencil readback. Requires a more complex pixel packing
step.
3D/Cube/2D Array readback. Also requires a more complex packing
step.
Bug: angleproject:3944
Change-Id: Ic5d9a606177ba7e3e5ab945feb5f555afa11741f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879964
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
2c703b1a
|
2019-10-24T17:53:24
|
|
Print the testConfig in dEQP tests.
This will help debug failures on the bots that could be caused by the
wrong test config being used. As a side effect this changes the
condition array of GPUTestConfig to use an angle::BitSetT
BUG=chromium:997351
Change-Id: If742cd3d416694d5df6c3e6c1d722a24f487a960
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879585
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
febdcf51
|
2019-10-28T10:54:03
|
|
Roll dEQP to VK-GL-CTS
Switch from Android dEQP to Khronos GL CTS.
We now mirror from the public Khronos Github
github.com/KhronosGroup/VK-GL-CTS
This includes a number of text fixes for GLES 2.0 conformance.
Bug: angleproject:3914
Bug: angleproject:1656
Change-Id: I4cccd33e47752742cb989127c5883c0afd075b9e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879579
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
dfc20daf
|
2019-10-28T13:51:42
|
|
Plumb more logic for ANGLE_get_image.
Also implements and tests validation / negative API.
Bug: angleproject:3944
Change-Id: I3385a4255f4fab6a12eee2abfa5ffcce2107359a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879961
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
95a736bd
|
2019-10-09T10:26:25
|
|
Reland "Add more test_utils functions."
This is a reland of 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c
Re-land uses static linking with angle_util. The root cause
of the CFI error wasn't solved. Static linking works around
the problem by not using any export rules.
Second re-land fixes missing imports for libEGL and libGLESv2
static varieties.
Original change's description:
> Add more test_utils functions.
>
> Includes methods for creating temporary files, deleting files, and
> reading files into a string. Also renames GetPathSeparator to mention
> it's only used for environment variables. Includes a new virtual type
> angle::Process that will be used to implement cross-platform async
> Process launching for tests. Also includes a way to specify a custom
> crash handler callback.
>
> Also adds a few unit tests for the new functionality. They are disabled
> on Android because the functions are not needed by the new test runner.
>
> Bug: angleproject:3162
> Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Bug: chromium:1015810
Bug: angleproject:3162
Change-Id: I2a18b819b0f91df610ad12ffedea2b38349fe7cf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879859
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
76763cb9
|
2019-10-25T11:09:27
|
|
SwiftShader: Update the expectations file according to latest testing
Some tests fixed. Others only fail on Android.
Bug: angleproject:4016
Bug: angleproject:4019
Bug: angleproject:4045
Change-Id: If3b915fdd1c54cefa17589f025ea8a93935377c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1880165
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
77fba58c
|
2019-10-24T19:29:24
|
|
Fix improper vertex array assignment in ANGLE test.
Test: StateChangeTestES3.VertexArrayObjectAndDisabledAttributes
Bug: angleproject:4049
Change-Id: Ibda86585e9117686283081a76df213b2b2db0b6e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879582
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a6206854
|
2019-10-24T12:55:09
|
|
Enable "-Wmissing-field-initializers".
This is another warning required by Skia. This one didn't find
anything that surprising. Enabling the warning does help enforce
code consistency and avoids a bit of possible undefined behaviour.
Bug: angleproject:4046
Change-Id: Ifec7f4afad49cd820bf3c0a79df3f46559473ee2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877477
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7af2676b
|
2019-10-23T16:18:57
|
|
Fix TextureAttachment support for unsized DS formats
Unsized DS formats should not pick up support from ES3 automatically.
Also unsized DEPTH COMPONENT textures should not be allowed as texture
attachments without also having support for GL_ANGLE_depth_texture or
GL_OES_depth_texture extensions.
This change modifies some unsized formats to require extension support
for TextureAttachment use.
There are a couple of tests bugs that were exposed by this change so
updated those tests as well.
This CL only changes TextureAttachment support, but it's quite possible
that renderbuffer (and texture) support may also need to be updated.
Will attempt that in a follow-on.
Bug: angleproject:3952
Change-Id: I75d15330dc418c421cd2855135e1e8100a89b2e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877135
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6b652b33
|
2019-10-24T10:03:37
|
|
Vulkan: Update expectations for SwiftShader sRGB fix
Issue 4011 had 2 root causes, one of which was fixed and the other split out into 4037.
Bug: angleproject:4011
Bug: angleproject:4037
Change-Id: I460588d7667429751416c1904863a5117a8a4b1d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1878889
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
c139250c
|
2019-10-13T15:05:23
|
|
Vulkan: Enable multithreading tests.
These now pass with all the prior work.
One test case is left disabled on Linux due to timeouts.
Bug: angleproject:2464
Change-Id: If41f59f44f78160cf1b26dc05f560afd286996bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832526
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b2885bc4
|
2019-10-23T13:33:48
|
|
Vulkan:Enable UpdateBufferInUse test on AMD
Re-tested this and it's now passing so turning it on.
Bug: angleproject:3255
Change-Id: Iccf63cfaa4386dfda5628e189362631e655953f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1876081
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
a9f11bf1
|
2019-10-21T08:39:14
|
|
GN: Separate out constructor/destructor warnings.
This will allow for the capture/replay sample to disable the warnings.
We'd like to keep them enabled for most of ANGLE code.
Bug: angleproject:3611
Change-Id: I3cc7af26fa54c03cc5b79727e7b403a1b218a903
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869544
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
1efcbdb6
|
2019-10-22T12:32:04
|
|
Vulkan: Fix sampler object lifetime.
Using the same scheme as we do for VkImageViews we can track VkSampler
lifetime using SharedResourceUse. This fixes the race condition that
could occur when samplers are deleted in one Context while being used
in another.
This fixes the last known resource lifetime issue. The multithreading
tests should now pass without validation errors.
Also adds regression tests to angle_end2end_tests.
Bug: angleproject:2464
Change-Id: I9dbed5062a0863b240ddf1a9b5d28560334934de
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869548
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
df9a7500
|
2019-10-21T15:32:27
|
|
Remove forceNonZeroScissor workaround
The original driver bug no longer exists after upgrading the bots. This
workaround has the side effect causing the bug 3867.
Bug: angleproject:3407
Bug: angleproject:3867
Change-Id: I64f2e41729f209a1cef5ba49140650207666992c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1870845
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b3070102
|
2019-10-18T16:01:34
|
|
Add SH_REMOVE_DYNAMIC_INDEXING_OF_SWIZZLED_VECTOR
This is a workaround for the webgl2 conformance test case
WebglConformance_conformance2_glsl3_vector_dynamic_indexing_swizzled_lvalue.
Dynamic indexing of swizzled lvalue like "v.zyx[i] = 0.0" is problematic on
various platforms. This removes the indexing by translating it this way:
void dyn_index_write_vec3(inout vec3 base, in int index, in float value){
switch (index) {
case (0):
(base[0] = value);
return ;
case (1):
(base[1] = value);
return ;
case (2):
(base[2] = value);
return ;
default:
break;
}
if ((index < 0))
{
(base[0] = value);
return ;
}
{
(base[2] = value);
}
}
...
dyn_index_write_vec3(v.zyx, i, 0.0);
...
Bug: chromium:709351
Change-Id: I971b38eb404209b56e6764af1063878c078a7e88
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869109
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f228038d
|
2019-10-17T11:18:47
|
|
Treat Pixel 2 XL and Pixel 2 the same
When running on a Pixel 2 XL PIXEL2 expecations were not being
applied. Both devices use the same chipset and have same capabilities
so treat them the same for expectations.
Bug: angleproject:4025
Change-Id: I5287e80c21b681765af540ed6dfbd053aa838c1c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866076
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f939cb63
|
2019-10-20T21:44:36
|
|
Revert "Reland "Add more test_utils functions.""
This reverts commit 7923e234bc458eda5936b8cb4f09fa19e28c0452.
Reason for revert: Fails compilation on rollers:
[2097/6048] SOLINK ./lib_angle_unittests__library.cr.so
FAILED: lib_angle_unittests__library.cr.so lib_angle_unittests__library.cr.so.TOC lib.unstripped/lib_angle_unittests__library.cr.so
python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="../../third_party/android_ndk/toolch...(too long)
ld.lld: error: undefined symbol: glCreateShader
>>> referenced by shader_utils.cpp
>>> angle_util_static/shader_utils.o:(CompileShader(unsigned int, char const*)) in archive obj/third_party/angle/libangle_util_static.a
ld.lld: error: undefined symbol: glShaderSource
Original change's description:
> Reland "Add more test_utils functions."
>
> This is a reland of 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c
>
> Re-land uses static linking with angle_util. The root cause
> of the CFI error wasn't solved. Static linking works around
> the problem by not using any export rules.
>
> Original change's description:
> > Add more test_utils functions.
> >
> > Includes methods for creating temporary files, deleting files, and
> > reading files into a string. Also renames GetPathSeparator to mention
> > it's only used for environment variables. Includes a new virtual type
> > angle::Process that will be used to implement cross-platform async
> > Process launching for tests. Also includes a way to specify a custom
> > crash handler callback.
> >
> > Also adds a few unit tests for the new functionality. They are disabled
> > on Android because the functions are not needed by the new test runner.
> >
> > Bug: angleproject:3162
> > Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940
> > Commit-Queue: Jamie Madill <jmadill@chromium.org>
> > Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
>
> Bug: chromium:1015810
> Bug: angleproject:3162
> Change-Id: I6a2c1e7b585a13ca846759f32da0777c00d7f7e6
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869541
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
TBR=ynovikov@chromium.org,jonahr@google.com,jmadill@chromium.org
Change-Id: I975b2214411906cb981bffa04fa50e0a65ff8b4e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1015810, angleproject:3162
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1870811
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
7923e234
|
2019-10-09T10:26:25
|
|
Reland "Add more test_utils functions."
This is a reland of 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c
Re-land uses static linking with angle_util. The root cause
of the CFI error wasn't solved. Static linking works around
the problem by not using any export rules.
Original change's description:
> Add more test_utils functions.
>
> Includes methods for creating temporary files, deleting files, and
> reading files into a string. Also renames GetPathSeparator to mention
> it's only used for environment variables. Includes a new virtual type
> angle::Process that will be used to implement cross-platform async
> Process launching for tests. Also includes a way to specify a custom
> crash handler callback.
>
> Also adds a few unit tests for the new functionality. They are disabled
> on Android because the functions are not needed by the new test runner.
>
> Bug: angleproject:3162
> Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Bug: chromium:1015810
Bug: angleproject:3162
Change-Id: I6a2c1e7b585a13ca846759f32da0777c00d7f7e6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869541
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0cb09633
|
2019-10-18T15:50:10
|
|
Revert "Add more test_utils functions."
This reverts commit 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c.
Reason for revert:
1 Test Suite(s) failed. angle_unittests failed because of:
TestUtils.RunApp on Linux CFI
https://ci.chromium.org/p/chromium/builders/ci/Linux%20CFI
Original change's description:
> Add more test_utils functions.
>
> Includes methods for creating temporary files, deleting files, and
> reading files into a string. Also renames GetPathSeparator to mention
> it's only used for environment variables. Includes a new virtual type
> angle::Process that will be used to implement cross-platform async
> Process launching for tests. Also includes a way to specify a custom
> crash handler callback.
>
> Also adds a few unit tests for the new functionality. They are disabled
> on Android because the functions are not needed by the new test runner.
>
> Bug: angleproject:3162
> Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
TBR=ynovikov@chromium.org,jonahr@google.com,jmadill@chromium.org
Change-Id: I1441bfbae31712f72b4aebeeea9cd711c3975a5d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3162
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869254
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
72b2be2e
|
2019-10-18T09:52:27
|
|
Vulkan: Add expectations for Swiftshader dEQP failures.
Bug: angleproject:3952
Bug: angleproject:4011
Bug: angleproject:4013
Change-Id: Ia490ea1db052c31f5517822965b28d80b98dcc68
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1865438
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
7f418fc2
|
2019-10-01T07:56:53
|
|
Vulkan: lineloop support for DrawArrayIndirect
Add support for lineloops.
Includes a compute shader for generating an index
buffer to draw lineloop.
Instancing turns out to be a special case for indirect draws if we
have vertex attributes that need to be emulated (e.g. divisor too
large or native vertex format not available).
Test: dEQP.GLES31/functional_draw_indirect_*
angle_end2end_tests --gtest_filter=LineLoopIndirectTest.*/*
dEQP.GLES3/functional_draw_*
Bug: angleproject:3564
Change-Id: I1fdabe2c8a690c8b6df9e252e1e839e08796bcca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834682
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
5fcfcea4
|
2019-10-09T10:26:25
|
|
Add more test_utils functions.
Includes methods for creating temporary files, deleting files, and
reading files into a string. Also renames GetPathSeparator to mention
it's only used for environment variables. Includes a new virtual type
angle::Process that will be used to implement cross-platform async
Process launching for tests. Also includes a way to specify a custom
crash handler callback.
Also adds a few unit tests for the new functionality. They are disabled
on Android because the functions are not needed by the new test runner.
Bug: angleproject:3162
Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
93121f36
|
2019-10-17T08:18:16
|
|
Make invalid extension directive a CHROMEOS warning
This change allows extension directive after ESSL1.0 non-preprocessor tokens on CHROMEOS.
CHROMEOS kiosks have a video player that violates this spec requirement so just flagging
as a warning to prevent failed video playback.
Added ANGLE_PLATFORM_CHROMEOS define to build config in order to only make this a warning
on CHROMEOS. Split the ESSL1 & ESSL3 cases back out as ESSL3 had always been an error
on all platforms in the past and so want to keep it that way.
Bug: 1003005
Bug: angleproject:4023
Change-Id: Ia931b3a8dad82dbda4c9c9e49a9c1090116397b5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866464
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
2ed547a6
|
2019-10-15T17:34:09
|
|
Vulkan: Mark destination buffers dirty after a copy
When a user performs a copy between GL buffers, we need to mark the
destination buffer dirty in case that buffer data is used as vertex
data and requires another conversion to be done.
Bug: angleproject:3544
Test: dEQP-GLES3.functional.buffer.copy.*
Change-Id: Ie3196db4feb0f01d0b25c8799312c5f57c1095a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1863007
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
2d0e5b55
|
2019-08-27T13:49:07
|
|
GL_EXT_multisampled_render_to_texture extension. Part 2.
For textures that use this extension, a multisampled texture is
implicitly created for the texture.
Upon write or read, the multisampled texture is either return
to be drawn to or resolved and returned as a single sampled texture.
This is the functionality change with end2end tests.
Bug: angleproject:980428
Change-Id: I5776875a132fed7a3f4f00fb02f9e8e250684630
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1773717
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a2f89c00
|
2019-10-12T13:40:03
|
|
Add sampler array index validation for ESSL 3.00 onwards
In Section 12.30 of the ESSL 3.00 spec on p143-144:
Indexing of arrays of samplers by constant-index-expressions is
supported in GLSL ES 1.00. A constant-index-expression is an
expression formed from constant-expressions and certain loop indices,
defined for a subset of loop constructs. Should this functionality be
included in GLSL ES 3.00?
RESOLUTION: No. Arrays of samplers may only be indexed by constant-
integral-expressions.
Bug: chromium:985032
Change-Id: Iad9e4b8000b442a6631e1d2295c2670c4a79d486
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1849452
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c42da4e5
|
2019-10-03T13:46:28
|
|
Extend ANGLE_request_extension with DisableExtension
ARB_texture_rectangle is the only currently supported disablable
extension. This allows us to use ARB_texture_rectangle in WebGL
implementations without exposing it to WebGL user shaders.
Bug: angleproject:3956
Bug: angleproject:3770
Change-Id: I80b10d2e9c9feebe545ce15195721487165ecc51
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1838418
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d192e933
|
2019-09-27T10:27:10
|
|
Vulkan: Support binding texture levels as a rendertarget
This CL refactors how TextureVk handles rendertargets. It removes
the single rendertarget that previously supported 2D, and expands
the layer/level list of rendertargets to handle all cases.
Bug: angleproject:3184
Bug: angleproject:3996
Test: Texture2DTestES3.FramebufferTextureChangingBaselevel/ES3_Vulkan
Test: FramebufferRenderMipmapTest.RenderToMipmap/ES2_Vulkan
Test: FramebufferRenderMipmapTest.RenderToMipmap/ES3_Vulkan
Test: ComputeShaderTest.ImageStoreMipmapSlice/ES3_1_Vulkan
Change-Id: I466d0389cc6744994f88c40cc388fca694b53a99
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854895
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
bbf0ce28
|
2019-10-11T06:55:36
|
|
Vulkan:Add support to stage D or S textures
Correctly set image aspect for depth or stencil texture staging.
This fixes 6 failing dEQP 3.0 tests and an end2end test.
Note that DS combined aspect textures will need special handling
to read each aspect separately which is not included in this fix.
Bug: angleproject:3949
Change-Id: I8e3f8166bdd31e2c002752b2f5c107ba411b2b0d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855964
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
741c0aa6
|
2019-10-10T15:26:07
|
|
Vulkan: Update GLES 3.0 expectations files
Helping team understand what's still crashing/failing within the 3.0
expectations files.
Bug: angleproject:2950
Change-Id: I63f1d05ae60e34d423fd4b962a79c21ae813e335
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854015
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
f912b294
|
2019-10-10T15:32:14
|
|
Vulkan: Handle 2Darray base/max level change
When staging updates to the vkImage based on texture base/max level
change, we weren't properly handling texture 2Darray.
This CL changes several helpers to explicitly accept Vulkan extents
and offsets so it is clear how things should be treated.
Bug: angleproject:3991
Test: dEQP-GLES3.functional.shaders.texture_functions.texturesize.*sampler2darray*
Change-Id: Iae80ce7201180224fc3bb7823f21a360950c515d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854020
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8896e18e
|
2019-10-08T16:07:52
|
|
Fix the missing global memory barriers
This adds the transtlations of GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, and
GL_FRAMEBUFEER_BARRIER_BIT to the vulkan backend.
Bug: angleproject:3934
Change-Id: I2bd86a16b461cf7dc01d0d4386f49365a5292446
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1847172
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ee08d924
|
2019-10-10T08:56:12
|
|
Vulkan: Enable GL_OES_EGL_image_external_essl3
GL_OES_EGL_image_external_essl3 support was added a while back.
This patch just enables it for the Vulkan backend
Bug: angleproject:2668
Test: ./angle_end2end_tests --gtest_filter=ImageTestES3*Vulkan
Change-Id: I6b8b1f63ed6e9faafe668ad9a73fc7fbc9c17670
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852190
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
32bee0fd
|
2019-10-10T11:46:58
|
|
Fix debug layers being disabled everywhere.
The define that controlled the debug layer preference was mistakenly
checking a Vulkan define. When the Vulkan define was moved into the
Vulkan back-end then the layers became disabled for all back-ends.
Fix this by using a layered check in the Vulkan back-end and restoring
the asserts enabled check to ShouldUseDebugLayers.
Suppresses some tests that regressed the layers after they were broken.
Bug: angleproject:3987
Bug: angleproject:3991
Change-Id: I6aafcff6d9e19866c2324663ef4d4550e97fcfb8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852706
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2fa9d734
|
2019-10-07T16:35:38
|
|
Partially Revert "Convert DXT1 RGB data to DXT3 RGBA when uploading to the GPU."
This reverts commit e6582161b04beaa368f3081897912ede89d7800d.
Remove the DXT1->DXT3 transcoding but leave in the MacOS workarounds for fixing
the alpha channel of DXT1 textures.
BUG=angleproject:3729
Change-Id: Ib276c1e4a58155866da8c661cba2063a4e4304fe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1846015
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
2d5c8d31
|
2019-10-08T22:37:32
|
|
Vulkan: Fix off by one when flushing staged texture updates
When updating ImageHelper::flushStagedUpdates to handle base and
max texture level, we got off by one when deciding if an update
landed in in the range of the current vkImage. When there are 8
mipLevels and we see an update for level 8, that should not be
applied, and should be preserved in updatesToKeep.
Bug: angleproject:3950
Test: MipmapTest.DefineValidExtraLevelAndUseItLater/ES2_Vulkan
Change-Id: I63e0c24f7885f8b0580ce212b531711aebcf0e01
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1848933
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8e7d9d6c
|
2019-10-04T18:19:32
|
|
Add EGL_ANGLE_device_cgl extension.
Supports querying the CGLContextObj and CGLPixelFormatObj associated
with ANGLE's underlying OpenGL context on macOS.
Minor refactorings to implementation of device attribute queries on
all platforms.
Bug: angleproject:3973
Change-Id: I24341668be4cbfed0b7f2df4c1402df1effe275e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1846733
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
93b213cb
|
2019-09-27T16:18:28
|
|
Vulkan: Update depth/stencil expectations
Update depth/stencil test expectations.
One test remove as it now passes, others narrowed to NVIDIA only.
Bug: angleproject:3970
Bug: angleproject:2905
Change-Id: Ie73ac2eb586469f78e025b4ad3a8fa0274abd3af
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1845334
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e600ac2a
|
2019-10-04T14:31:57
|
|
Create test to validate scissor size is correct
The concern is that if a user changes the framebuffer's attachment
to one with a different size, contextVk->updateScissor() may not be
called and we may render too much/little. This change creates a test to
verify that when the FBO's attachment size changes, the correct amount
of fragments are drawn.
Bug: angleproject:3754
Test: FramebufferTest_ES3
Change-Id: I47108d6fe3e671ddc8c30cf969f63c1c3ae76f84
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1842128
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
a787b618
|
2019-10-03T12:59:12
|
|
D3D11: Buffers larger than MAX_UNIFORM_BLOCK_SIZE
We had clamped all UBOs to MAX_UNIFORM_BLOCK_SIZE, when D3D11
allows the underlying buffer to be larger as long as each UBO
binding is still within the max.
Bug: 906683
Bug: angleproject:3388
Change-Id: Id5536302dd73a41c0882fddd77e94f4503f00730
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1837356
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
1e3f2e0b
|
2019-10-07T14:11:34
|
|
Roll angle-internal with new GLES 1.0 fixes.
The fixes require a few changes in ANGLE to support the build. Will
upstream them to Khronos once its proved they can run the GLES 1.0
tests correctly.
Bug: angleproject:3979
Change-Id: I74ff0cfa8ccc1bc903517a67d26352c4801e6355
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1845471
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Lingfeng Yang <lfy@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6acfca3a
|
2019-10-04T08:06:29
|
|
Vulkan: Handle texStorage when base level is set
In this scenario, we allow the texStorage call to fully populate the
image, then let dirty bits change the vkImage to reflect the base level.
Bug: angleproject:3948
Bug: angleproject:3949
Test: dEQP-GLES3.functional.shaders.texture_functions.texturesize.*
Change-Id: I1f453653a23b9d1802a374def40c9372ada8822a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1841275
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5e9d4ee9
|
2019-10-05T09:49:36
|
|
Vulkan: Re-enable SwiftShader tests.
These should be fixed with this CL:
https://swiftshader-review.googlesource.com/c/SwiftShader/+/36990
Bug: angleproject:3876
Change-Id: I02e657cd9b1986c914c5ed4c79dd86a91fe0cb75
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1842129
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f7ad03aa
|
2019-10-04T08:50:38
|
|
Vulkan: Enable a few polygon offset tests in dEQP
These tests pass on Vulkan backend except on Nvidia cards.
Nivida vulkan driver does not clamp the depth fragment
in case of floating-point representation.
Bug: angleproject:3678
Test: dEQP-GLES3.functional.polygon_offset.float32_result_depth_clamp
dEQP-GLES3.functional.polygon_offset.float32_factor_1_slope
Change-Id: I2be70f98aafac546af592aa55c5b56e836e53a46
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1824797
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
894f76c5
|
2019-10-04T11:20:13
|
|
Only Enable Pixmap Support for Unix (or compatible)
Only enable pixmap support for Unix (or compatible).
Bug: angleproject:3159
Test: CQ
Change-Id: I646ea89dfafa8816d318010fb454ba2bec49f2b1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1841614
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
fb568849
|
2019-10-04T18:45:55
|
|
Suppress failure on Linux FYI Ozone
BUG=angleproject:3969
Change-Id: Idcefab4b5f07b018c58acb27f47721445c6a6316
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1842051
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
7e821ac1
|
2019-04-09T16:49:51
|
|
Android: Enable dEQP-EGL.functional.query_context.*
Exclude the Nexus 5x from the following tests:
dEQP-EGL.functional.query_context.get_current_context.*
dEQP-EGL.functional.query_context.get_current_display.*
dEQP-EGL.functional.query_context.get_current_surface.r*
dEQP-EGL.functional.query_context.query_context.*
Bug: angleproject:3159
Change-Id: Ib02553944b952a687d5e10d624756310627b81c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1559204
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
6b60dfd8
|
2019-10-02T07:54:18
|
|
Vulkan: Remove image views forced to one mip level
textureSize requires the view to reflect actual mip levels, so
we can't artificially limit the view based on filtering mode.
This CL removes those views.
That unearthed a problem where the VK backend wasn't properly
implementing non-mipmapped filter modes. There is a blurb in
the Vulkan spec about this:
There are no Vulkan filter modes that directly correspond to OpenGL
minification filters of GL_LINEAR or GL_NEAREST, but they can be
emulated using VK_SAMPLER_MIPMAP_MODE_NEAREST, minLod = 0, and
maxLod = 0.25, and using minFilter = VK_FILTER_LINEAR or
minFilter = VK_FILTER_NEAREST, respectively.
So this CL also adds that emulation.
Bug: angleproject:3948
Test: TextureSizeTextureArrayTest.BaseLevelVariesInTextureArray
Test: dEQP-GLES3.functional.shaders.texture_functions.texturesize.*
Change-Id: I81d5c3417e7d9abd0cdd058b935963706024a28f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1835937
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
c2fc8bd8
|
2019-10-01T18:21:22
|
|
GL: Fix support for glCopyTextureCHROMIUM with source rectangle textures.
Shader generation didn't use the correct sampler type and discarded pixels
outside the [0, 1] texcoord which is almost always true when sampling rectangle
textures.
Added end2end test coverage.
BUG=990368
Change-Id: Ifaa73dfa83467d5bfa32e3795b52033254436a77
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834582
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
5549ef04
|
2019-10-02T09:38:03
|
|
Vulkan: Fix content synchronization for textures bound to images
Added state tracking back for images bound with glBindImageTexture
This fixes a bug where updating a texture with glTexSubImage2D would not
trigger a content update when the same image was re-used in a dispatch
Bug: angleproject:3887
Test: SimpleStateChangeTestES31.DispatchWithImageTextureTexSubImageThenDispatchAgain/ES3_1_Vulkan
Change-Id: I030ec52f1c470f9e9ff7c14f1c24fe213000a3ad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1835943
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f750d86a
|
2019-10-01T17:52:37
|
|
Trigger a flush() when the command graph contains too many objects
If an App repeatedly issues GL commands like glTextImage2D without a
finish/flush/draw, it's possible for ANGLE to exhaust the available
Vulkan memory allocations and exceed
VkPhysicalDeviceLimits::maxMemoryAllocationCount. When this occurs,
the Vulkan validation layers will trigger an error and cause dEQP
tests to fail.
This change will query the backend if a flush() should be performed
during each of the GL delete calls, and perform it if necessary. This
will cause a queue submission and a Serial increment, allowing the
allocated memory to be freed, preventing the validation errors.
Bug: angleproject:3818
Test: KHR-GLES3.copy_tex_image_conversions.forbidden.renderbuffer_cubemap_*
Change-Id: I26d0a47aa7bca10c25bc8141f1523afbab0b3b5b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834781
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1f08ab28
|
2019-10-03T16:22:52
|
|
Re-land "GN: Componentize vulkan back-end build."
Re-land fixes angle_end2end_tests disabling Vulkan.
This moves the build configuration into the Vulkan back-end dir.
This should be a little easier to maintain as all Vulkan-related
config is in one place.
Note that this should not interfere with Skia's build as they do
not import the Vulkan back-end sources.
One additional possiblity that this enables is testing other
compile-time permutations of the Vulkan back-end more easily. For
example we could make a simple change to enable compile testing
of the Vulkan back-end with custom command buffers disabled.
Also fixes a few errors affecting less tested configs.
Bug: angleproject:3943
Change-Id: I0161668abcc58fcf529dde120998d4b99445fdd5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1838454
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1d02157e
|
2019-09-24T10:54:40
|
|
Only enable shader array size restrictions for HLSL
Shader arrays are currently restricted to 64K entries for all translator
back ends. This is being changed to just HLSL, since the other back
ends appear to have support for larger sizes.
Bug: angleproject:3865
Test: dEQP-GLES31.functional.compute.basic.copy_image_to_ssbo_large
Test: dEQP-GLES31.functional.compute.basic.copy_ssbo_to_image_large
Test: ComputeShaderTest.VeryLargeArrayInsideFunction/*
Change-Id: I9a9d1322e24b3206debdea6a3fd517b4d6869ed9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821943
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
c847a75f
|
2019-09-20T14:08:32
|
|
Fix redundant draw in DrawBaseVertexBaseInstanceTest
Discovered this redundant draw issue when writing javascript
webgl conformance test.
Together fix some broken formatting.
TBR=geofflang@chromium.org
Bug: 3402
Change-Id: I29dbcd04da7e47d9e0bc79074ff69202378c1214
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1816822
Reviewed-by: Shrek Shao <shrekshao@google.com>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
1850492e
|
2019-10-02T08:23:03
|
|
Vulkan: Disable OES_vertex_type_10_10_10_2 on GLES 2.0
- Because of the difference in the SNORM to FLOAT conversion formula
between GLES 2.0 and 3.0, OES_vertex_type_10_10_10_2 is disabled
when the context version is lower than 3.0.
- Modify test conversion formula to be compliant with GLES 3.0 equation
Bug: angleproject:3868
Test: angle_end2end_tests --gtest_filter=VertexAttributeTest*Packed*Vulkan
Change-Id: I8b85d8146ee05353bc40fa0022f05d6634c33110
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1792197
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2328d65a
|
2019-10-03T02:27:07
|
|
Revert "GN: Componentize vulkan back-end build."
This reverts commit d46e2fb1e341a7ba7da56072658d3b4b1a540077.
Reason for revert: Broke Vulkan angle_end2end_tests.
Bug: angleproject:3954
Original change's description:
> GN: Componentize vulkan back-end build.
>
> This moves the build configuration into the Vulkan back-end dir.
> This should be a little easier to maintain as all Vulkan-related
> config is in one place.
>
> Note that this should not interfere with Skia's build as they do
> not import the Vulkan back-end sources.
>
> One additional possiblity that this enables is testing other
> compile-time permutations of the Vulkan back-end more easily. For
> example we could make a simple change to enable compile testing
> of the Vulkan back-end with custom command buffers disabled.
>
> Also fixes a few errors affecting less tested configs.
>
> Bug: angleproject:3943
> Change-Id: Iaf819936896e4f5d3e6415ed16ab0c940e46cdb6
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1829662
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Tobin Ehlis <tobine@google.com>
TBR=tobine@google.com,jonahr@google.com,jmadill@chromium.org
Change-Id: I7cf3db4f6b7d8b779625ea2491172bb429b498a9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3943
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1837233
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fd092e85
|
2019-10-02T13:19:00
|
|
Vulkan: Point end2end failure at correct bug
The ComputeShaderTest.BindImageTextureWithOneLayerTexture3D/ES3_1_Vulkan test
is failing because of the previously-reported angleproject:3886.
Switching the comment to so indicate.
Bug: angleproject:3188
Bug: angleproject:3886
Change-Id: Ib62316dcf3935f96bdcab701e8fdb6042a1ab859
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834837
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
bc49abad
|
2019-10-02T11:14:48
|
|
Vulkan: Expect additional GLES 3.0 KHR tests to pass
Another change (for angleproject:3939) also fixes angleproject:3695. One of
those tests now fails for another/known reason (angleproject:3836).
Bug: angleproject:3695
Bug: angleproject:3836
Change-Id: I46e77fe15df84e3145933fca5cea6da47bc390f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834834
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
d46e2fb1
|
2019-09-27T16:22:35
|
|
GN: Componentize vulkan back-end build.
This moves the build configuration into the Vulkan back-end dir.
This should be a little easier to maintain as all Vulkan-related
config is in one place.
Note that this should not interfere with Skia's build as they do
not import the Vulkan back-end sources.
One additional possiblity that this enables is testing other
compile-time permutations of the Vulkan back-end more easily. For
example we could make a simple change to enable compile testing
of the Vulkan back-end with custom command buffers disabled.
Also fixes a few errors affecting less tested configs.
Bug: angleproject:3943
Change-Id: Iaf819936896e4f5d3e6415ed16ab0c940e46cdb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1829662
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
7dd03446
|
2019-09-30T13:50:12
|
|
Ensure Features* descriptions stay up to date
Created a macro to help keep Features' descriptions up to date. This
will avoid confusion in the future when conditions change. Also update
all descriptions to match current state.
Bug: angleproject:3947
Change-Id: Ifc65e7789c916fab79f1323798dfb59d7a4efad2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1829584
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4671fee9
|
2019-10-01T12:28:25
|
|
Don't expose CHROMIUM_color_buffer_float_rgb[a] in ES3.0+
These extensions are superseded by EXT_color_buffer_float and not needed to support
WebGL2. Allowing them to expose rendering to RGB[A]32F when EXT_color_buffer_float
is not supported causes dEQP failures.
BUG=angleproject:3939
Change-Id: Ib50a061526f29fc0628e732123c04a22800345dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832525
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
f03259ad
|
2019-09-19T11:31:40
|
|
Vulkan: lineloop support for DrawElementsIndirect
Add support for lineloops.
Includes a compute shader for converting lineloop index
buffer with optional restart into linestrip.
Test:
dEQP.GLES31/functional_draw_indirect_*
angle_end2end_tests --gtest_filter=LineLoopIndirectTest.*/*
Bug: angleproject:3564
Change-Id: I12d08db1c8d99867f0611e53be50193647695260
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1797106
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
e5009be8
|
2019-10-01T16:27:37
|
|
Vulkan: Divide 3188 KHR failures into 2 known root causes + cleanup.
The two root causes are angleproject:3695 and angleproject:3836. Some tests
failing from angleproject:3836 were still labeled for angleproject:3458. This
CL does some cleanup of that, and improves the comments for the two
root-causes.
Bug: angleproject:3188
Bug: angleproject:3458
Bug: angleproject:3695
Bug: angleproject:3836
Change-Id: I4c9be0b3078c1fc21064fb88b58e28ea92c3a73c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834275
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
f22f16d3
|
2019-07-18T15:10:49
|
|
Reland "Vulkan: Use VK repos' internal BUILD.gn files"
This is a reland of 552f5fcb0d8fcc615856ce3b678190e1cbdd38e6
There was a missing build dependence causing a build no-op
issue which has now been fixed in the upstream Vulkan Validation
Layer repo.
Primary workaround that need to be re-visted and fixed are:
1. Disabled validation layers on 32-bit Windows
2. Disabled validation layers on 32-bit Android
3. Disabled DebugUtils on Android, using DebugReport instead
4. Using custom VK Loader branch to avoid WDK dependence
Original change's description:
> Vulkan: Use VK repos' internal BUILD.gn files
>
> This retires custom BUILD.gn files for the Vulkan Headers, Tools,
> Validation-Layers, and Loader repos. They now have integrated BUILD.gn
> files so switched ANGLE to use those by default.
> Also Validation Layer, Loader, and Tools repos no longer uses codegen
> so this speeds up the build overall.
> Switched over from old VK_LAYER_LUNARG_standard_validation meta-layer
> to VK_LAYER_KHRONOS_validation unified layer.
>
> This changes includes a temporary workaround to the Vulkan-Loader repo
> to remove its Window's build dependence on WDK. There are plans to
> remove that depenedence in Loader master, but until then we can use
> our custom branch workaround.
> It also includes a custom branch for validation layers that includes
> some build fixes for ANGLE.
> Finally, the layers were crashing on Android when attempting to use
> DebugUtils extension so forcing DebugReport on Android for now.
>
> Bug: angleproject:2449
> Bug: angleproject:3320
> Bug: angleproject:3852
> Bug: angleproject:3924
> Bug: angleproject:3925
> Bug: angleproject:3946
> Bug: chromium:997009
> Bug: chromium:997016
> Change-Id: I48b36acefcc7f2bc930eb72d6fdbc87bca24f833
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1610438
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Tobin Ehlis <tobine@google.com>
Bug: angleproject:2449, angleproject:3320, angleproject:3852
Change-Id: I373ada091a1329db5e304874079428d01ba21d52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1778302
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
377b1679
|
2019-09-24T14:12:37
|
|
Vulkan: Enable dEQP-GLES31.functional.shaders.*
The dEQP-GLES31.functional.shaders.* tests are currently passing for
GLES 3.1, so I'm removing them from the expectations file. We don't have
GLES 3.2 testing for ANGLE-Vk yet, so those may need to be revisited.
Bug: angleproject:3569
Test: dEQP-GLES31.functional.shaders.*
Change-Id: Iff1fcfae7d82444432468b64d5bfa046beb9bf45
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1822740
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
616a4dc0
|
2019-09-12T16:10:47
|
|
Vulkan: Full support for program interface queries
Program interface queries are a generic way to query attributes of
the program like uniforms, samplers, attributes, etc. This change
supports those queries for program outputs.
Bug: angleproject:3596
Test: dEQP-GLES31.functional.program_interface_query.*
Test: ProgramInterfaceTest.cpp
Change-Id: I0f13692949073b45988b6f930eee9eaa6411bbe2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1801998
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f10bf6bf
|
2019-09-26T10:27:18
|
|
Vulkan: Implement multi-threaded GL.
The main component of this change is to make vk::BufferHelper,
vk::ImageHelper and vk::SyncHelper use a common path. We introduce a
new "vk::SharedGarbage" helper class that stores small lists of garbage
from individual objects like an ImageHelper or BufferHelper. The
SharedGarbage is stored in the RendererVk with the ResourceUse of the
helper object. The ResourceUse tells RendererVk when it is safe to
destroy the GarbageObjects.
New "onGraphAccess" commands are added in a few places to enable the
common garbage collection path. A couple Context-only resources like
default attributes now are referenced where they were not before.
Also reorganizes some functions so we can add a few helpful ASSERTs
to our graph dependencies. Added "updateCurrentAccessNodes" for this.
Also adds a "RendererScoped" helper to replace many uses of
"ContextScoped".
The multithreading EGL tests mostly pass but have some remaining
flakiness so cannot yet be enabled.
Bug: angleproject:2464
Change-Id: Ia3e3ae8848d731abf3f21ebe04c33e381e130be0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1808444
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
988f7170
|
2019-09-30T15:52:37
|
|
Vulkan: Base/max level fixes and cleanup
This CL cleans up references to base/max level bug and fixes
one lingering issue regarding special handling of depth/z for
arrayed surfaces.
Bug: angleproject:3148
Bug: angleproject:3184
Bug: angleproject:3948
Bug: angleproject:3949
Bug: angleproject:3950
Test: dEQP-GLES3.functional.texture.mipmap.*base_level*
Test: dEQP-GLES3.functional.texture.mipmap.*max_level*
Test: Texture2DArrayTestES3.DrawWithLevelsOutsideRangeWithInconsistentDimensions
Change-Id: Iad72005a111507c50b8be9726adc32285bbae52b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832757
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
4a276034
|
2019-09-30T16:31:00
|
|
Vulkan: Narrow skip lists for 3D and 2DArray tests to Compute
Narrow these skips to just compute shader failures, which
we will tackle as part of the next sprint.
Bug: 3188
Bug: 3189
Bug: 3810
Test: CopyTexImageTestES3.2DArraySubImage
Change-Id: I74c259712e5f3c9296bd3a6241d1da8f1668ca36
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832881
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e49df747
|
2019-09-30T16:09:28
|
|
Update expectations for deqp failure
KHR-GLES3.packed_depth_stencil.clear_buffer.depth24_stencil8
KHR-GLES3.packed_depth_stencil.verify_read_pixels.depth24_stencil8
Appear to be failing due to a driver issue on Pixel devices, update
expectations to call out that bug.
Bug: angleproject:3683
Change-Id: Ibb226078e561610351be8223d04f27a5ff69bf9e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832759
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
71c1138d
|
2019-08-16T12:23:04
|
|
Vulkan: Emulate instanced attrib divisor
This sets instancedArrays[ANGLE|EXT] extenstions as always
supported regardless of underlying Vulkan HW's max vertex attrib
divisor.
Then detect instances where app sets a divisor that isn't supported
by hardware and emulate those cases. Emulations is accomplished by
copying the instanced attribs to a new buffer where each attrib is
present once per instance, using the attrib divisor value as a
factor to replicate the attribs, and then setting the actual divisor
value for the draw to "1".
Also, we only store 8 bits for the divisor used in the PSO, so this
code also handles emulation of the case where divisor is > 255.
This is passing all of the drawInstanced/Elements dEQP tests
where divisor has to be emulated.
Also enabled end2end InstancingTestES3 for Vulkan backend.
Bug: angleproject:2672
Change-Id: I9932f9eab49b16a19e8bbd35dacaf3b5a27a213f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1758689
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
cb16fb5f
|
2019-08-29T16:53:55
|
|
Vulkan: Support texture base and max levels
The Vulkan backend uses a vkImage that matches the number
of effective levels in the GL texture. This is due to the fact
that GL textures can have really strange layouts that only make
sense when base level and max level are applied.
For instance, take the following layout with disjoint mip levels:
Level 0: 4x4 RGBA
Level 1: 2x2 RGBA
Level 2: 10x10 RGB
If base level is set to zero and max level is set to 1, the image is
still considered mip-complete:
Level 0: 4x4 RGBA ==> Base Level 0 ==> Level 0: 4x4 RGBA
Level 1: 2x2 RGBA ==> Max Level 1 ==> Level 1: 2x2 RGBA
Level 2: 10x10 RGB
If base and max level are then both set to 2, the texture is still
considered complete, but of a different size and format:
Level 0: 4x4 RGBA
Level 1: 2x2 RGBA
Level 2: 10x10 RGB ==> Base/Max Level 2 ==> Level 2: 10x10 RGB
When the base or max level is changed, we must recreate the vkImage to
match the new level count.
To support that, we:
- Stage updates from the current image to the new image
- Only stage updates if there aren't already staged updates for a level
- Free the current image and so it can be recreated at the next draw
This CL does the following:
- Refactors TextureVk::copyImageDataToBuffer to support staging updates
without flush
- Adds TextureVk::copyImageDataToBufferAndGetData to support previous
use model
- Adds TextureVk::changeLevels, triggered during syncState, which stages
updates and releases the current image.
- Updates ImageHelper::flushStagedUpdates to understand base/max levels
- Updates TextureVk::ensureImageInitialized and TextureVk::generateMipmap
to account for base/max level
- Tracks base and max levels in ImageHelper
- Adds ImageHelper::stageSubresourceUpdateFromBuffer to support
this use case
- Adds ImageHelper::isUpdateStaged to determine if changeLevels
should propagate data
- Makes gl::TextureTypeToTarget available for use outside of ImageIndex
- Enables several deqp and end2end tests
Bug: angleproject:3148
Test: dEQP-GLES3.functional.texture.mipmap.*base_level*
Test: dEQP-GLES3.functional.texture.mipmap.*max_level*
Change-Id: I14ca071c9c62eb310dfed7ef9290dc65fc3ff696
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1776933
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
57b37b6b
|
2019-09-25T18:29:28
|
|
Rename util/system_utils to util/test_utils.
This removes a GN naming conflict between util/system_utils and
common/system_utils. This conflict was preventing us from adding
unit tests to utils' version of system_utils. Since these functions are
only useful to tests and samples rename them test_utils for simplicity.
Will enable further development of ANGLE's standalone testing harness.
Bug: angleproject:3162
Change-Id: I9e34fb69f96c5de6dc2453fce4148a0f285e15ed
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1825268
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a0159c03
|
2019-09-02T14:49:07
|
|
Vulkan: Implement basic geometry shader feature
Enable the default behavior of the geometry shader
Bug: angleproject:3571
Test: dEQP-GLES31.functional.geometry_shading.input.basic_primitive.points
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.lines
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.line_loop
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.line_strip
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.triangles
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.triangle_strip
dEQP-GLES31.functional.geometry_shading.input.basic_primitive.triangle_fan
Change-Id: I65708d19bbfe6a0ad8ca392a1d6b3609b1410ef4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1793753
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3c2a5230
|
2019-09-23T11:07:18
|
|
Vulkan: 8bit index support for DrawElementsIndirect
Add partial support for DrawElementsIndirect.
This supports all primitives types except lineloop.
Includes a compute shader for converting 8bit index
buffers to 16bit index buffers where the index buffer range
is defined in a GPU buffer.
Test:
dEQP.GLES31/functional_draw_indirect_*
Bug: angleproject:3564
Change-Id: Ibe9c55323e46a398f0b703cd8597a72ba6790570
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1792948
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7c8e276c
|
2019-09-23T11:06:39
|
|
Vulkan: Add support for DrawArraysIndirect
Add partial support for DrawArraysIndirect.
This supports all primitives types except lineloop.
Test:
dEQP.GLES31/functional_draw_indirect_*
Bug: angleproject:3564
Change-Id: I065417a848390070c9f116db6fd3f90c12fb3886
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811873
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
70d79b76
|
2019-09-11T11:43:55
|
|
GL: Add state validation functions to GL backend
These functions validate that the driver's reported state matches
ANGLE's internal state. Can be useful for debugging
Bug: angleproject:3900
Change-Id: I35d15e991986dcab114939c551a88549f09bd263
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1797254
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
babe59ff
|
2019-09-25T15:53:20
|
|
Temporarily disable SwiftShader everywhere.
Times out not only on Windows 7 but also Win10 Debug.
Bug: angleproject:3876, chromium:1008100
Change-Id: I3c82d430fae09067a8247e3c4b03ff9c9b685c06
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1825538
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d4c75347
|
2019-09-18T10:49:34
|
|
Vulkan: Enable GPU conversion from RGB16F to RGBA16F
- Add proper GPU conversion routine when the source and destination
format of vertex attribute is half float data type.
- Add an end2end test which utilizes half float GPU conversion path.
Bug: angleproject:3802
Test: angle_end2end_tests --gtest_filter=*VertexAttributeTest.HalfFloatBuffer*
Change-Id: Ia88a4984156f8967796bea3852c3cde714f2acab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1824799
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
ba04be8c
|
2019-09-24T08:55:34
|
|
GN: Refactor angle_test and remove angle_test_main.
This cleans up the GN files and prepares them for eventually using a
custom test harness.
Bug: anglerproject:3162
Change-Id: I3d8568628a9465093adec9e838617a002192beef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821939
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
273175cd
|
2019-09-24T08:44:09
|
|
Fix Regex in DebugShaderPrecisionTest.
One regex had an extra parenthesis. Also confirms that we can use raw
string literals to produce more readable regexes.
Bug: angleproject:3162
Change-Id: I82e6bc622a8fa3d9f6424c53cb7dcb4dddde368a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821938
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a3f1981d
|
2019-09-23T17:04:03
|
|
Add SwiftShader to command line arguments.
Also adds parsing SwiftShader to the test expectations code.
Bug: angleproject:3876
Change-Id: I70e1475b62f86160d5a150218e792801fb0259bc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817109
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
35f01546
|
2019-09-24T10:02:36
|
|
Vulkan: Enable many GLES 3.1 Debug API tests to run/pass.
Bug: angleproject:3590
Bug: angleproject:1442
Bug: angleproject:2324
Change-Id: Iad0abd7b9566d488a655dfe5061db18cdfe74326
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821450
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
6d625bfe
|
2019-09-23T20:05:29
|
|
Skip ComputeShaderTest.UniformDirty on Linux Intel Vulkan
Flaky on Linux FYI Release (Intel HD 630) bot.
Bug: angleproject:3934
Change-Id: Ia3092e9c740d0052e106d464c59ceac63d4e434e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1820085
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
84a32193
|
2019-09-18T16:51:38
|
|
Vulkan: Disable Line Rasterization Emulation for Android
The latest Pixel drivers require that the GL line raserization emulation
is disabled to rasterize the lines correctly.
Bug: angleproject:2830
Test: dEQP-GLES2.functional.rasterization.primitives.line*
Test: dEQP-GLES2.functional.clipping.line.long_line_clip
Change-Id: I126715e61f44500c00efc7e81044c0a09001d3bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1812177
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
ecd3ebe9
|
2019-09-23T09:53:22
|
|
Temporarily disable SwiftShader on Windows 7.
A necesssary change in SwiftShader introduced a bug that was causing
test timeouts. Disable SwiftShader so they can revert the change
without breaking ANGLE.
Bug: angleproject:3876
Change-Id: I4b841a4a28fa13947c24b72d856db38c9e0135cb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1815908
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ee891ce3
|
2019-09-23T10:21:21
|
|
Disable non-portable include path warning.
A prior CL did not apply the warning disable to the right targets.
Bug: chromium:995046
Change-Id: If06b8493d2c1ce3026dfbb1d32a9746e1fd0cddf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1815909
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8be7a4c7
|
2019-09-19T12:48:31
|
|
Re-land "Vulkan: SwiftShader integration."
Re-land fixes Win7 configs and placement of the SwiftShader module for
ASAN/TSAN configs.
Adds a new EGL extension for picking SwiftShader when using the Vulkan
back-end. Also cleans up ICD enabling code RendererVk. Also includes a
change to a buffer size necessary to support SwiftShader's minimum
limits.
Bug: angleproject:3876
Bug: b/140251624
Change-Id: I5e16057ac4de07bbdbbd248542b1b9103133294f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1810065
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c37d2370
|
2019-09-19T18:54:40
|
|
Reland "Refactor built-in symbol table."
This is a reland of 59d982c0dcad580ccbf4e29f32ffa3ea9a280122
Original change's description:
> Refactor built-in symbol table.
>
> In preparation for reducing binary size. Shortend a bunch of strings
> and symbol prefixes so the autogen file will be more compact.
>
> Bug: chromium:998535
> Change-Id: If1bedaaacc06dce9678d432055ffa0c9215a8dbd
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814724
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Bug: chromium:998535
Change-Id: Iebc5b1b5e1a084257fba3c50026cc62df5a879b3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817499
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
f585c2fb
|
2019-09-21T02:12:37
|
|
Revert "Refactor built-in symbol table."
This reverts commit 59d982c0dcad580ccbf4e29f32ffa3ea9a280122.
Reason for revert: crbug.com/1006501
Original change's description:
> Refactor built-in symbol table.
>
> In preparation for reducing binary size. Shortend a bunch of strings
> and symbol prefixes so the autogen file will be more compact.
>
> Bug: chromium:998535
> Change-Id: If1bedaaacc06dce9678d432055ffa0c9215a8dbd
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1814724
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
TBR=timvp@google.com,jonahr@google.com,jmadill@chromium.org
Change-Id: Ie540da8ea4429e075a3284183e5a004cbcf1307b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:998535,chromium:1006501
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1817497
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
|
|
857bb7ff
|
2019-09-20T14:25:44
|
|
Vulkan: Enable most dEQP-GLES31.functional.state_query* tests to run
Bug: angleproject:3600
Bug: angleproject:3520
Bug: angleproject:3189
Change-Id: Ibbb930a9d64845a1e0cf731d2a35bd9d50f6c477
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1816445
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|