Log

Author Commit Date CI Message
Robert Iannucci bca3e7b2 2019-08-06T17:07:31 Roll ./build/ 54ea0e7fd..680f9ea3d (665 commits) https://chromium.googlesource.com/chromium/src/build.git/+log/54ea0e7fd122..680f9ea3db81 $ git log 54ea0e7fd..680f9ea3d --date=short --no-merges --format='%ad %ae %s' 2019-08-06 iannucci [build/toolchain] Add individual vpython spec to win/tool_wrapper.py 2019-08-06 jdonnelly Revert "Proguard conditional keeps for layouts" 2019-08-06 awolter [Fuchsia] Remove fuchsia.net.SocketProvider from manifests 2019-08-06 chromium-autoroll Roll Fuchsia SDK from 890588017156 to 890585497544 2019-08-06 harshpa Proguard conditional keeps for layouts 2019-08-06 chromium-autoroll Roll Fuchsia SDK from 890591001924 to 890588017156 2019-08-06 chromium-autoroll Roll Fuchsia SDK from 890593631659 to 890591001924 2019-08-05 liaoyuke [code coverage] Skip instrumenting files that has triggers a SI bug 2019-08-05 chromium-autoroll Roll Fuchsia SDK from 890596874171 to 890593631659 2019-08-05 bpastene chromeos: Point TMPDIR to /usr/local/tmp during VM/DUT tests. 2019-08-05 chromium-autoroll Roll Fuchsia SDK from 890600805183 to 890596874171 2019-08-05 chromium-autoroll Roll Fuchsia SDK from 890603479401 to 890600805183 2019-08-04 chromium-autoroll Roll Fuchsia SDK from 890606035392 to 890603479401 2019-08-04 chromium-autoroll Roll Fuchsia SDK from 890608527889 to 890606035392 2019-08-04 chromium-autoroll Roll Fuchsia SDK from 890611617821 to 890608527889 2019-08-03 chromium-autoroll Roll Fuchsia SDK from 890614483854 to 890611617821 2019-08-03 chromium-autoroll Roll Fuchsia SDK from 890617289215 to 890614483854 2019-08-03 chromium-autoroll Roll Fuchsia SDK from 890619875909 to 890617289215 2019-08-03 chromium-autoroll Roll Fuchsia SDK from 890622382381 to 890619875909 2019-08-03 sergeyu [fuchsia] Fix exe_runner.py 2019-08-02 smaier Give longer oatdump timeout in class verification failure script 2019-08-02 tsniatowski Fix android shared_library metadata output_extension handling 2019-08-02 chromium-autoroll Roll Fuchsia SDK from 890625413366 to 890622382381 2019-08-02 vtsyrklevich Create separate gwp_asan_unittests target 2019-08-02 csharp Reland "Reland "Remove references to MessagePump::Type"" 2019-08-02 csharp Revert "Reland "Remove references to MessagePump::Type"" 2019-08-02 carlscab Reland "Remove references to MessagePump::Type" 2019-08-02 cjgrant crashpad_stackwalker: Specify Android platform when generating symbols 2019-08-02 chromium-autoroll Roll Fuchsia SDK from 890628039446 to 890625413366 2019-08-02 chromium-autoroll Roll Fuchsia SDK from 890630742147 to 890628039446 2019-08-01 thakis Replace global NO_TCMALLOC and USE_TCMALLOC defines with BUILDFLAG(USE_TCMALLOC). 2019-08-01 chromium-autoroll Roll Fuchsia SDK from 890633683590 to 890630742147 2019-08-01 tiborg [build] Move logic selecting feature module libraries into Chrome layer 2019-08-01 thakis Disable Wimplicit-int-float-conversion on the clang tot bots in nocompile tests as well. 2019-08-01 thakis Disable Wimplicit-int-float-conversion on the clang tot bots. 2019-08-01 chromium-autoroll Roll Fuchsia SDK from 890643698313 to 890633683590 2019-08-01 eliribble Properly handle transient communication errors with gsutil.py 2019-08-01 ianloic Reland "[Fuchsia] Update to new FIDL string and vector APIs" 2019-07-31 zmin Revert "[Fuchsia] Update to new FIDL string and vector APIs" 2019-07-31 wez [Fuchsia] Fix update-sdk.py not to re-download the same SDK. 2019-07-31 enne Allow Android to be built in an out-of-repo build dir 2019-07-31 efoo OWNERS files updated with latest COMPONENT and TEAMS. 2019-07-31 ianloic [Fuchsia] Update to new FIDL string and vector APIs 2019-07-31 jbudorick android: add a local emulator environment. 2019-07-31 findit-for-me Revert "Remove references to MessagePump::Type" 2019-07-31 chromium-autoroll Roll Fuchsia SDK from 890646710525 to 890643698313 2019-07-31 carlscab Remove references to MessagePump::Type 2019-07-31 chromium-autoroll Roll Fuchsia SDK from 890647868040 to 890646710525 2019-07-30 dpursell [Fuchsia] initialize async_wait_t options field 2019-07-30 chromium-autoroll Roll Fuchsia SDK from 890650128659 to 890647868040 (...) 2019-05-07 raul //build/util/lastchange.py: Decode Git output for Python 3 support 2019-05-07 chromium-autoroll Roll Fuchsia SDK from 891418129671 to 891415132646 2019-05-07 xhwang Set |is_cast_using_cma_backend| to false by default on Android 2019-05-06 chromium-autoroll Roll Fuchsia SDK from 891421020977 to 891418129671 2019-05-06 agrieve Android: Filter out ijar build messages about "Passing class through" 2019-05-06 estevenson Android: Remove unused firebase_app_id from BuildConfig.java. 2019-05-06 oprypin Support Python 3 in jni_generator.py 2019-05-06 thakis win: Re-enable libc++ on Windows. 2019-05-06 estevenson Android: Set Firebase app IDs at runtime. 2019-05-06 chromium-autoroll Roll Fuchsia SDK from 891423780675 to 891421020977 2019-05-06 msalama Orderfile: Caller-callee instrumentation to improve performance. 2019-05-06 chromium-autoroll Roll Fuchsia SDK from 891426706836 to 891423780675 2019-05-06 robliao Revert "Make Visual Studio version selection more smart" 2019-05-06 chromium-autoroll Roll Fuchsia SDK from 891429647473 to 891426706836 2019-05-05 chromium-autoroll Roll Fuchsia SDK from 891432088534 to 891429647473 2019-05-05 chromium-autoroll Roll Fuchsia SDK from 891434892022 to 891432088534 2019-05-05 yang.gu Make Visual Studio version selection more smart 2019-05-05 chromium-autoroll Roll Fuchsia SDK from 891437836392 to 891434892022 2019-05-04 chromium-autoroll Roll Fuchsia SDK from 891440437628 to 891437836392 2019-05-04 chromium-autoroll Roll Fuchsia SDK from 891443015083 to 891440437628 2019-05-04 chromium-autoroll Roll Fuchsia SDK from 891461844150 to 891443015083 2019-05-03 estevenson Android: Fix resource_ids_provider_dep for TrichromeChrome.[apk/aab] 2019-05-03 estevenson Android: Turn proguard flags expectation file back on. 2019-05-03 agrieve Fix emma_coverage=true GN gen failure 2019-05-03 jbudorick Revert "Reland "base: Add ENABLE_LOG_ERROR_NOT_REACHED buildflag"" 2019-05-03 xhwang Reland "base: Add ENABLE_LOG_ERROR_NOT_REACHED buildflag" 2019-05-03 thakis win: Don't build /FORCE:DuplicateRes targets with /WX. 2019-05-03 thakis Switch use_lld from whitelist to blacklist 2019-05-02 bjoyce Fix Ignore_proguard_configs paramter in android_aar_prebuilt(). 2019-05-02 yliuyliu Include all classes for jacoco agent 2019-05-02 thakis Enable LLD in 32-bit Chrome OS ARM builds. 2019-05-02 thakis Make exclude_unwind_tables only dependent on is_official_build 2019-05-02 thakis linux/32-bit: Use lld as linker. 2019-05-02 chromium-autoroll Roll Fuchsia SDK from 891464457253 to 891461844150 2019-05-01 sergeyu [Fuchsia] Implement SysmemBufferManager and SysmemBufferCollection 2019-05-01 xhwang Revert "base: Add ENABLE_LOG_ERROR_NOT_REACHED buildflag" 2019-05-01 chromium-autoroll Roll Fuchsia SDK from 891467542177 to 891464457253 2019-05-01 xhwang base: Add ENABLE_LOG_ERROR_NOT_REACHED buildflag 2019-05-01 estevenson Trichrome Proguard: Handle Java locale lists in the library. 2019-05-01 chromium-autoroll Roll Fuchsia SDK from 891470157719 to 891467542177 2019-05-01 chromium-autoroll Roll Fuchsia SDK from 891473642618 to 891470157719 2019-05-01 bjoyce android_aar_prebuilt: Add ignore_proguard_config as flag. 2019-05-01 justincohen Reland "[ios] Disable custom libcxx with xcode clang." 2019-05-01 sunnyps viz: Change OutputSurface and BeginFrameSource creation order 2019-04-30 carlosk Revert "Reland "[ios] Disable custom libcxx with xcode clang."" 2019-04-30 justincohen Reland "[ios] Disable custom libcxx with xcode clang." 2019-04-30 chromium-autoroll Roll Fuchsia SDK from 891475811432 to 891473642618 2019-04-30 mastiz Remove legacy sync codepath prior to pseudo-USS 2019-04-30 bpastene chromeos: Run all Tast tests via the host-side tast bin. 2019-04-30 tiborg [bundles] Add install script and its dependencies to runtime deps Created with: roll-dep ./build Bug: 973721 Change-Id: I0a05e26c7f2836b4a261eaa59db7bc0111755935 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1740510 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tobin Ehlis 4c833efb 2019-07-11T11:29:35 Vulkan: Enable sampler objects This is the initial implementation to get GLES3.0 Sampler Objects working on the Vulkan backend. When samplers are dirty, a corresponding Vulkan sampler object will be created with associated state and textures are flagged as dirty anytime sampler bindings change. Then when handling textures dirty, any bound sampler objects are pulled from active texture units. When sampler objects are bound, their state is used instead of the built-in texture's sampler state. This change also adds a test that uses the same texture object with different sampler objects to test a corner case that dEQP misses. Bug: angleproject:3208 Change-Id: I643d9c9d5cb92fecc02dad815a07bcf349534c70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1706897 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Robert Iannucci 23c0463b 2019-08-08T07:55:06 [infra/config] Actually set properties_j in the right place. Add PRESUBMIT check to ensure these config files stay correct. Bug: 973721 Change-Id: Ife5884d39ca22c55fdc58b65220ed0c34c85fb6a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1743048 Commit-Queue: Robbie Iannucci <iannucci@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tobin Ehlis 31ab533e 2019-07-19T15:31:01 Sampler::syncState now returns angle::Result This is a foundational refactor in preparation for implementing sampler objects in the Vulkan backend. Bug: angleproject:3208 Change-Id: I5970f141d3f825aee1f8b713be8e162c7d0f8bbe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1710961 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
Mohan Maiya 8400d05c 2019-08-07T14:52:54 Vulkan: Support the vertex_type_2_10_10_10_rev format - Modify the python script and json file to generate the code which adds the function for vertex_type_2_10_10_10_rev. These functions handle the loading and conversion for vertex_type_2_10_10_10_rev. - Modify ConvertVertex.comp and ConvertVertex.comp.json to perform a GPU based conversion for vertex format of type 2_10_10_10_rev - Modify BindingIsAligned function to check that both stride and binding offset is aligned to the format size when the component size is not aligned to 8 bits. - Modify deqp3 expectations file to enable type_2_10_10_10_rev format vertex array tests. Bug: angleproject:3193 Test: dEQP-GLES3.functional.vertex_arrays.single_attribute.*2_10_10_10* Change-Id: I2358d0d8888f7dfd7eac999dc150f643167de817 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1709035 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
James Darpinian 64751a0b 2019-08-07T15:08:51 Reenable extra_warnings config for angle_utils Originally disabled in https://crrev.com/c/1738438. Bug: angleproject:1459 Change-Id: I95172dc95a5d3e9d838c542ee6bcfb2338ffc9a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1743078 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi e86a8560 2019-08-07T11:55:01 Vulkan: Fewer subgroup ops in seamful cubemap emulation Two values were retrieved from quad neighbors; layer and ma. The value of ma was retrieved as the helper invocations would otherwise have a different value as the major axis. This change makes the helpers rechoose ma based on the layer, which removes a number of subgroup operations. This is also more precise as the major axis value could be slightly different from the neighbor. Bug: angleproject:3732 Change-Id: I3c8ca724e91c52ca2f7edc03bb0e5dca67610ff4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1742215 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Kimmo Kinnunen 7270a6d5 2019-08-06T16:01:42 Fix ShaderStorageBufferTest31.LoadAndStoreBooleanVarAndArray to be more correct The test contained bugs which made it fail on multiple platforms. After mapping SSBO, access the data with GLuint instead of GLboolean. The elements in the SSBO are 4 machine units, even though the SSB talks about bools. A bvec2 declared after bool in the SSB has alignment requirements. The test asserts that a shader written result is zero. In this case it needs to initialize the result buffer to non-zero in order to prove that the shader put the zero there. Bug: angleproject:3749, angleproject:1951 Change-Id: Iad8301be7f9e9df6bbed6b390d9c415d4e437c1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1738909 Commit-Queue: Kimmo Kinnunen FI <kkinnunen@nvidia.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 0fec5eab 2019-08-08T07:01:54 Roll ./third_party/spirv-tools/src 698b56a8f024..b029d3697ea3 (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/698b56a8f024..b029d3697ea3 Created with: gclient setdep -r ./third_party/spirv-tools/src@b029d3697ea3 The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=ynovikov@chromium.org Change-Id: I25c62c4e6f905331fb658ab2b1cb2f5556bd3513 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1743588 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 7424fe8b 2019-08-07T18:29:13 Skip BufferDataOverflowTest.VertexBufferIntegerOverflow on Win NVIDIA D3D11. Due to flaky timeout. Bug: angleproject:3786 Change-Id: I9881dcf4bcb2c958c7e5d26cba635d9cf3ff7f1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1743050 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Robert Iannucci 1d25ed29 2019-08-07T14:06:33 [infra/config] Bump OS X SDK on mac builders to version 10.1 Bug: 973721 Change-Id: Iaead721362a0d19912f0d365654c613ff861c842 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1742543 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
James Darpinian 22ec7dc9 2019-08-06T10:10:52 Remove all global constructors and exit time destructors. WebKit compiles with -Wglobal-constructors, so they want this. I decided to do -Wexit-time-destructors at the same time. Bug: angleproject:3439 Bug: angleproject:1459 Change-Id: I4b44ae4f8e6f066e07dc7f9f6ced9a5d49dc8f8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1738438 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 7c7dec01 2019-08-06T17:44:11 Use RenderbufferID in place of GLuint handles. This will allow frame capture/replay to more easily emulate object handle manipulation. It also provides a bit of type safety. Also generalizes ResourceMap to handle non-GLuint IDs. Bug: angleproject:3611 Change-Id: I174fd260f326e0dbe2aca3f818215c91d82cf48c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1706559 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi 93560ef5 2019-07-25T16:13:02 Vulkan: Seamful cube map emulation In GLSL, a cube texture is sampled with one of textureCube* functions. This function takes a 3D coordinate which is a vector from the center of the cube and identifies a direction to sample from. GLES2.0 has the following table that translates this 3D coordinate (Rx, Ry, Rz) to a face and ST coordinates within that face. This table can be found in Section 3.7.5 (Cube Map Texture Selection). A compiler pass is implemented in ANGLE that replaces samplerCube declarations with a sampler2DArray. The textureCube* functions are replaced with the corresponding texture* functions with the translated coordinates according to that table. Gradients provided to textureCubeGrad are translated using the same formulae, which is not precise but the spec specifies this projection to be implementation dependent. Helper invocations enabled through WQM (whole quad mode) cause a nuisance in that the extrapolated varyings used as coordinates in a textureCube call could have a different major axis (and therefore face) from the non-helper invocations that lie within the geometry. subgroupQuadSwap* operations are used in conjunction with gl_HelperInvocation to make sure the helper threads calculate texture UVs in the same face as the non-helper invocations. Bug: angleproject:3300 Bug: angleproject:3240 Bug: angleproject:3243 Bug: angleproject:3732 Change-Id: I0cb6a9b1f2e1e6a392b5baca1c7118ed1c502ccf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1715977 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Clemen Deng 44f518b5 2019-08-06T13:31:01 Have run_code_generation only call vpython when needed gen_builtin_symbols.py uses a vpython module to generate a perfect hash function Also seeded the perfect hash function to make it deterministic Bug: angleproject:3747 Change-Id: I660fe71bd6b2213be9d4ccc2f68641637a49a047 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1738747 Commit-Queue: Clemen Deng <clemendeng@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Kimmo Kinnunen 483ee3fa 2019-08-07T14:53:37 Remove ShaderStorageBufferTest test skips for bug 2990, bug is marked fixed Unskip ShaderStorageBufferTest tests that reference bug angleproject:2990, the bug is marked fixed and the tests pass. Bug: angleproject:2990 Change-Id: I378f648baa1caf44c5e5280c1580abaefcbe6cba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1742146 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Dustin Green 415bb0cd 2019-08-06T17:26:14 IWYU - zircon/assert.h without stdlib.h Bug: None Change-Id: I524d9c97ebe0f58487bff47631ffc68073f665f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1740871 Reviewed-by: Michael Spang <spang@chromium.org> Commit-Queue: Michael Spang <spang@chromium.org>
Jamie Madill 798f6c61 2019-08-05T15:10:28 Strip extension from packed GLenum data. This reduces the code duplication in this json file. It should make the packed enum map easier to maintain going forward as we add more entry point permutations. Bug: angleproject:3611 Change-Id: Ideab630584f0a41892262660fc1e0aedcc5dd639 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1736126 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Ian Elliott b13c38c1 2019-08-06T09:50:49 Vulkan: Enable GL_UNPACK_SKIP_IMAGES in the Tex*Image* code A boolean was hard-coded to false to disable the use of GL_UNPACK_SKIP_IMAGES disabled in ImageHelper::stageSubresourceUpdate() (I assume because 3D textures wasn't yet supported). The boolean is now set based on type type of the texture. Bug: angleproject:3781 Change-Id: I09d9fd142cceb3bebfa341fd0ff9179241c61a9c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1738433 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Shahbaz Youssefi 0296e169 2019-08-02T14:38:45 Vulkan: Refactor atomic counter retype code A generic "retyper" class is extracted out of the atomic counter retype code to be used with coverting samplerCube to sampler2DArray for seamful cubemap sampling emulation. Bug: angleproject:3732 Change-Id: I8b5f835125b9513afcfe7baeea48afaf1299a027 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1733807 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jiacheng Lu ed5f7e4d 2019-06-07T15:54:00 Vulkan: Use a persistent CommandPool Previously transient CommandPool is used for CommandBuffer allocation, it is created and destroyed per frame. However, profiling found that CommandPool destroy is very inefficient. So this commit removed the previous logic and use two preallocated resetable CommandPools (One for Primary and One for Secondary) Bug: angleproject:3508 Change-Id: I8b36f2738b082811c3177935c61b10e01acb6947 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1648667 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 44e690ca 2019-07-22T16:42:55 Vulkan: Support unaligned atomic counter buffer binding GLES doesn't require any implementation-specified alignment requirement for atomic counter buffers. They are emulated with Vulkan storage buffers, which do have restrictions. The storage buffers are bound at aligned offsets, and the remaining offsets are passed to the shader as uniform values. This means that the driver uniforms are now also bound to the compute pipeline. Bug: angleproject:3566 Change-Id: I1a3429438f76d95e33cb5c6ef2c9370a10d900d6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713095 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 6201d134 2019-08-06T09:01:45 Vulkan: Suppress KHR-GLES2 ASTC 3D Texture Tests The following tests are failing on 64b Pixel 2 devices: KHR-GLES2.texture_3d.compressed_texture.rgba_astc_8x6_khr KHR-GLES2.texture_3d.compressed_texture.srgb8_alpha8_astc_8x6_khr These will be marked "SKIP" while the failures are investigated. Bug: angleproject:3779 Test: angle_deqp_khr_gles2_tests Change-Id: Idd5ebd992cd2d0b459a9eec0f2960265248700b9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1739486 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Ian Elliott 99f494e4 2019-08-05T13:53:41 Vulkan: Enable GL_NV_pixel_buffer_object extension Now that PBOs are implemented, expose the NVIDIA PBO extension. Bug: angleproject:3233 Change-Id: Ie69e49fb0cefad7b55abcc57b2cb3284c196b158 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1737277 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
angle-autoroll 74ec0afe 2019-08-06T07:01:53 Roll ./third_party/spirv-tools/src 4f14b4c8cc25..698b56a8f024 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/4f14b4c8cc25..698b56a8f024 Created with: gclient setdep -r ./third_party/spirv-tools/src@698b56a8f024 The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=ynovikov@chromium.org Change-Id: I2f060affd28ad48d0bd6ceb283cbe71f669d5d35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1738326 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten bf176a0d 2019-08-05T12:33:58 Vulkan: Suppress KHR-GLES2 ASTC 3D Texture Tests The following tests are failing on 64b Pixel 2 devices: KHR-GLES2.texture_3d.compressed_texture.rgba_astc_8x6_khr KHR-GLES2.texture_3d.compressed_texture.srgb8_alpha8_astc_8x6_khr These will be marked "FAIL" while the failures are investigated. Bug: angleproject:3779 Test: angle_deqp_khr_gles2_tests Change-Id: I6248833e3c136123a41fafa24f4f528060fc016d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1737099 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jiacheng Lu 7c8928d0 2019-07-24T10:39:40 Add more tests covering gl::vertexAttribPointer 1. Add tests ensuring VBO binding with format requiring conversion in vulkan backend is converted correctly after binding and offset changes. 2. Add tests ensuring VBO binding switching between CPU and GPU handles correctly in vulkan. As for vulkan, it transfers CPU side memory into tightly packed buffer and may causing a stride change. Bug: angleproject:3256 Change-Id: I5d9d78670b28bec286b96d3b6a9c6211da3f3d9b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1716614 Commit-Queue: Jiacheng Lu <lujc@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jiacheng Lu f3dbf0a7 2019-07-29T11:31:20 FrameCapture dump GLenum to enum instead of value Add functionality to capture GLenum and GLbitfield parameters as enum names instead of values. Bug: angleproject:3611 Change-Id: I7ddc21093d44d1480b205563f30d89f82779b1f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724460 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill b8c0dc04 2019-07-30T17:22:23 Capture/Replay: Capture entry point enum when possible. This should save on a few string comparisons. This CL also adds a helper function that converts from an entry point enum ID to a string entry point name. Bug: angleproject:3611 Change-Id: I47434235ca25203ef1d6814897d81afab444a7fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1719065 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi c13ca2af 2019-07-17T15:46:29 Vulkan: Allow more than one atomic counter buffer binding dEQP assumes there are more than one atomic counter buffers available. This is technically not a requirement by the standard, but nevertheless could be what applications expect as well. This change adds support for multiple atomic counter buffer bindings. This is done by declaring an array of storage buffers for the atomic counter buffers (instead of declaring only one) and passing the (binding, offset) pair around to functions instead of just the offset. The atomic counter is found by indexing `binding` into the storage buffer array first before indexing `offset` into its `uint[]`. ProgramVk's default uniform collection is also fixed not to include atomic counter uniforms. A remaining issue is that atomic counter buffer offsets don't have alignment requirements in GLES, but Vulkan does for storage buffers. Similar to emulated transform feedback buffer offsets, these should be sent to the shader through uniform values. This will be done in a follow up change. Bug: angleproject:3566 Change-Id: I5600225c24c38f1a8ecf5c64388073055733197d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1707931 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott 2a53d83a 2019-08-05T10:42:14 Vulkan: Enable more tests to run (and in most cases pass). Some of this set of expectation-file changes are due to PBO implementation. Bug: angleproject:3628 Bug: angleproject:3455 Bug: angleproject:3209 Bug: angleproject:3210 Change-Id: Ie74913f22600b967c2a239f8a6452f9a99b2a00a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1736134 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Jamie Madill af69179c 2019-07-30T17:22:22 Capture/Replay: Capture return values. This will allow us to record resource IDs as they are created and bound to OpenGL. This in turn will enable implementing mid-execution capture. Bug: angleproject:3611 Change-Id: I9f12eb0025d90ad86327cf5181efd831662c2e3f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1706562 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Clemen Deng 9031bdd9 2019-07-26T14:51:23 Use perfect-hash module in gen_builtin_symbols.py The script currently takes ~4 minutes to run Using this module instead of manually hashing will improve runtime significantly Bug: angleproject:3747 Change-Id: I7e2d2ef5bbfd136b0299d571e0acc11f334c80b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724667 Commit-Queue: Clemen Deng <clemendeng@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll b8a27c5e 2019-08-05T07:01:09 Roll ./third_party/glslang/src a0eb5efd2bad..3cea2e5882e3 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/a0eb5efd2bad..3cea2e5882e3 Created with: gclient setdep -r ./third_party/glslang/src@3cea2e5882e3 The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: I11d337682184083a98cdea36ed94441897250c74 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1736398 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 73ec5b06 2019-08-05T07:01:53 Roll ./third_party/spirv-tools/src 0b70972a29c7..4f14b4c8cc25 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/0b70972a29c7..4f14b4c8cc25 Created with: gclient setdep -r ./third_party/spirv-tools/src@4f14b4c8cc25 The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: If2f37d2752f5e32b85081df915fdfa541872df4a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1736399 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Ian Elliott dc2c5c5a 2019-08-02T09:32:18 Vulkan: Initial Implementation of PBO support (software only) This contains support for both pixel unpack buffers (i.e. for glTex*Image*) and pixel pack buffers (i.e. for glReadPixels). Bug: angleproject:3209 Bug: angleproject:3210 Change-Id: I077cccbffb96fb5f0198922bc7c1850a7eb3f616 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1723096 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 8a43b8c7 2019-08-02T08:47:13 Vulkan: Fix incorrect alignment logic in readPixels Framebuffers previously assumed a readPixels buffer alignment of 4 bytes, which causes issues when attempting to read with a format larger than 4 bytes per pixel. Change the default alignment to match the size of the largest know Vulkan format Bug: angleproject:3731 Change-Id: I6cd26a99e6f3b2f30084d403630c17f51a0ecedf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1727731 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Ian Elliott a06d32dc 2019-08-02T15:44:09 Vulkan: Enable more tests to run (and in most cases pass). Bug: angleproject:3628 Change-Id: Idbb889165069d2ac45394b38cf44fad8c11bd910 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1733417 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Rafael Cintron 990990b4 2019-07-31T18:00:59 Fix memory leak in Renderer11::getD3DTextureInfo If the device for the texture does not match mDevice, we early out of the method without releasing textureDevice. Fixed by adding DynamicCastComObjectToComPtr and using angle::ComPtr Bug: angleproject:3761 Change-Id: Id4ef9231f8a91c30e326520132af693d51047c7d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1730175 Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 74e7a315 2019-08-01T21:49:56 Switch all Win10 GPU.FYI bots and related trybots to 64-bit Splits Windows CQ bots into 32 and 64 bit. Update changed dEQP bot names. Bug: 988833 Change-Id: I4cbb8836ca03b781ccd4c3f6059620bb2c97855e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1732671 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Tim Van Patten de50d039 2019-07-29T16:04:56 Enable ASTC 3D Textures Enable ASTC 3D textures. ETC are still unsupported, since dEQP fails if we indicate support. Bug: angleproject:3188 Test: dEQP.KHR_GLES2/texture_3d_compressed_texture_*astc* Test: dEQP.KHR_GLES2/texture_3d_compressed_texture_negative_compressed_tex_image Change-Id: I8559ae42d19e63fdf96ea7a49f2d7e3d5098771c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1723094 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Hyunchang Kim 4c118cb3 2019-07-31T16:35:07 Vulkan: Add support for OES_vertex_half_float Expose GLES 3.0 feature of half_float vertex on GLES 2.0 as an extension. Bug: angleproject:3191 Test: dEQP-GLES2.capability.extensions.vertex_data_formats.GL_OES_vertex_half_float Change-Id: Ia093b66f9c32c81946b2cbc15ff227baea4bfb02 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1728749 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 626a7280 2019-07-08T15:11:59 Vulkan: Implement framebuffers without attachments It is possible to render to a framebuffer object that has no attachments. However, the rasterization of primitives is always based on the area and characteristics of the bound framebuffer. These characteristics (size, number of samples, etc.) would normally be defined by the attached images. If no images are attached, these characteristics are defined by their default values. Bug: angleproject:3579 Test: dEQP-GLES31.functional.fbo.*no_attachments* Test: dEQP-GLES31.functional.state_query.framebuffer_default.* Change-Id: I9580b924ac810db573cd8df96273fbb01bbb1f73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1690688 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi ad77f55e 2019-08-01T14:41:17 Vulkan: Remove finish calls before BufferVk::mapImpl This function already calls a finishToSerial(), which waits only for the last submission in which the buffer was used to finish. There is no need to call finish() beforehands. Bug: angleproject:3213 Change-Id: I410adb80a630ff9a1cba8f7202cf002a7ea5f87b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1731551 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jiacheng Lu 82523300 2019-08-01T09:49:26 Vulkan: Recycle VkFence in checkCommandsCompleted VkFence is intended to be recycled after used up, however, there is one place that VkFence get destroyed directly after usage due to an implementation flaw. This CL fixed it up. Bug: angleproject:3556 Change-Id: I9ee44556329b9cee39ccdfef540f3c1b5180cd36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1731575 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
angle-autoroll 017c9d8e 2019-08-02T07:01:28 Roll ./third_party/spirv-tools/src ac3d131054ac..0b70972a29c7 (6 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/ac3d131054ac..0b70972a29c7 Created with: gclient setdep -r ./third_party/spirv-tools/src@0b70972a29c7 The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: Ia54fbc8403a4d7432ceb79369d257df860f81194 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1732515 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5e6468ba 2019-08-02T07:44:29 Roll ./third_party/glslang/src eea340047eca..a0eb5efd2bad (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/eea340047eca..a0eb5efd2bad Created with: gclient setdep -r ./third_party/glslang/src@a0eb5efd2bad The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: Ifc6b5debeccd4e74fc1eb2c1a5ad9079fedab981 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1732791 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Geoff Lang 369f9e5d 2019-07-30T13:46:14 GL: Support Rectangle textures as sources for glCopyTextureCHROMIUM. Chrome uses rectangle textures on mac to copy data. ANGLE's frontend allowed them as CopyTexture sources but did not implement them in the backend. TEST=Any WebGL test on Mac BUG=982294 Change-Id: If2e40292b22c4f49676e3ece8cc6fa126c5b7b94 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1726849 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi 301f77e7 2019-07-30T13:51:12 Vulkan: Enable passing ES2 multisample tests The tests need to be run with --deqp-gl-config-name=rgba8888d24s8ms4 for deqp to even try them. They pass and the removal of suppressions was missing from: https://chromium-review.googlesource.com/c/angle/angle/+/1639749 Bug: angleproject:3204 Change-Id: I77cb528da090d1374152e2e32f86e974df70358a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1726850 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
James Dong 593b1a6c 2019-07-30T10:02:22 Vulkan: Fix array handling in default uniforms Changes default uniform block layout generation to only remove the first array subscript, which causes arrays of arrays to be recognized correctly. Bug: angleproject:3604 Test: ./angle_deqp_gles31_no_gtest --deqp-egl-display-type=angle-vulkan -n 'dEQP-GLES31.functional.shaders.arrays*' Test: ./angle_deqp_gles31_no_gtest --deqp-egl-display-type=angle-vulkan -n 'dEQP-GLES31.functional.program_interface_query.*array*array*' Change-Id: Ifacc665cae87c651253e5cb8d929178d7fc92817 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724906 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: James Dong <dongja@google.com>
Jamie Madill d43d24bb 2019-07-30T17:22:20 Capture/Replay: Refactor entry points. This change does two things: * only call validation functions once per entry point. * move the capture call after the entry point call. Moving the capure after the call allows us to process the results of the call. Also we can clean up the validation double call by doing a bit of entry point refactoring. The code changes shouldn't impact the resulting code size when capture is disabled. Bug: angleproject:3611 Change-Id: I9e74ba0a8266903d3e9d1f2eac6acdd2932e5743 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1706561 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi a0d010ab 2019-08-01T11:05:21 Disable atomic counter buffer tests on AMD/Windows/GL Second attempt at fixing this bot: https://ci.chromium.org/p/chromium/builders/ci/Win10%20FYI%20x64%20Release%20%28AMD%20RX%20550%29 Bug: angleproject:3738 Change-Id: I8e8626cc911df9dae82c542b2dde8696f10e49bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1731130 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 868f5fa0 2019-07-30T17:22:18 Refactor return values from entry points. For capture, we'd ideally like to know the return value of a function when we capture it. The first step will be to intercept the return value instead of returning directly. Bug: angleproject:3611 Change-Id: I68c21aea323a71c6a9f1be613862158a37e2beae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1706560 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Xinghua Cao e995d7fb 2019-06-26T17:59:27 Use memoryBarrier to sync image load and store Image load and store are incoherent memory access operations, so need to use memoryBarrier to ensure the visibility of incoherent memory access operations with other operations. Bug: angleproject:3044 Change-Id: I4d474d260a3199c026911de8d20878cd327d16c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1677420 Commit-Queue: Xinghua Cao <xinghua.cao@intel.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 1dbbc7b3 2019-07-31T17:49:39 Skip couple TextureBorderClampIntegerTestES3 tests. TextureBorderClampIntegerTestES3.TextureBorderClampInteger/ES3_OpenGL TextureBorderClampIntegerTestES3.TextureBorderClampInteger2/ES3_OpenGL failing on Win10 FYI x64 Release (AMD RX 550). Bug: angleproject:3760 Change-Id: I0ccd56f190b1a3775f6a9a0448ca3003baa331ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1729564 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill eb1b1646 2019-07-30T17:22:17 Capture/Replay: Fix capture-enabled libs build. Adds a build option to use the capture libraries in the default output location for libGLESv2. With |angle_with_capture_by_default| enabled, libGLESv2 will have capture enabled and the non-capture libGLESv2 is built as libGLESv2_no_capture. Also moves the FrameCapture to be owned by gl::Context. Rearranges the code a bit so that we don't require a separate version of libANGLE for capture. Also implements a read pixels entry point parameter. Bug: angleproject:3611 Change-Id: Ic528e43e4779f794c8b6d0bf35410166dacc81b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1719064 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jiacheng Lu 3e493c48 2019-07-29T16:27:01 Vulkan: Optimize memory allocation offset rounding Use bit operation to compute memory alignment round up. Tested with T-Rex, hotspot in roundUp resolved. Bug: angleproject:3744 Change-Id: I55db941f588401a1d2d3d93f4d6b810e6b1aa95f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1725118 Commit-Queue: Jiacheng Lu <lujc@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>
angle-autoroll 34ebecc1 2019-07-31T07:01:57 Roll ./third_party/glslang/src f04f1f93a70f..eea340047eca (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/f04f1f93a70f..eea340047eca Created with: gclient setdep -r ./third_party/glslang/src@eea340047eca The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: I5d672794fb0ff90519363cad5172a614e8705347 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1728332 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Xinghua Cao eb06814d 2019-07-03T17:17:45 Correct barriers of glMemoryBarrier in test cases Some test cases use wrong barriers when calling glMemoryBarrier. Bug: angleproject:2280 Change-Id: I0750c1eba84ed8af32091f7ecd5bdbd2b32fd397 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1687591 Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Xinghua Cao <xinghua.cao@intel.com>
Jiacheng Lu 1ebe6014 2019-07-29T16:02:15 Vulkan: Only check sampler when setUniform1i(v) 1. only do isSampler checking when update int uniforms 2. inline some simple methods of LinkUniform This fix reduce CPU time spent on `isSampler` call from 70ms to 30ms in T-Rex bench on specific platform. Bug: angleproject:3743 Change-Id: I98ef3c892df27e08d54ed40946d924b5a50c796c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1725114 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Geoff Lang 8b2dfa0f 2019-07-04T16:22:05 GL: Implement EXT_external_objects This allows the GL backend to import Vulkan resources. BUG=angleproject:3656 Change-Id: Ie5e55ce3e1ba05e917619e3f192c13dcc36c3739 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1688507 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Clemen Deng <clemendeng@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 5c6a6cb6 2019-07-04T15:51:48 GL: Load external object extension entry points. BUG=angleproject:3656 Change-Id: I360d5a0eda820a4138e5400614332ae919216db6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1688506 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Clemen Deng <clemendeng@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang b75b97a2 2019-07-29T14:38:02 Support the SearchType argument for loading libraries with posix. When a local shared library should be loaded, resolve its full path before calling dlopen. This logic matches SwiftShader's library loading. This is a speculative fix for Chrome being unable to load ANGLE libraries when they are distributed as part of a Chromium.app and have a different path than the executable. BUG=982294 Change-Id: Ib70096eac7460417ea7ea32941e2273dd368e6ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724910 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Clemen Deng <clemendeng@google.com>
Shahbaz Youssefi 2613cdba 2019-07-22T10:33:08 Vulkan: Fix barriers between render passes Color attachment output ordering applies to commands recorded within a render pass subpass. We still need execution barriers between render passes (and subpasses, but we don't use them). Bug: angleproject:3347 Change-Id: Ifaddaeac35347d8a35e771f46a29047d52c9541c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713085 Reviewed-by: Fei Yang <fei.yang@arm.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 70cded6a 2019-07-30T07:01:44 Roll ./third_party/spirv-tools/src 9559cdbdf011..ac3d131054ac (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/9559cdbdf011..ac3d131054ac Created with: gclient setdep -r ./third_party/spirv-tools/src@ac3d131054ac The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: I88f21fb37e85379603e48bbbf221d9088b7cfaaf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1725336 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 3527cf1a 2019-07-30T07:02:00 Roll ./third_party/glslang/src 7fc868349143..f04f1f93a70f (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/7fc868349143..f04f1f93a70f Created with: gclient setdep -r ./third_party/glslang/src@f04f1f93a70f The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=geofflang@google.com Change-Id: Ife87ce07871fed4270585054a7ce29b17c0ae313 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1725526 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten 9addf0cb 2019-07-23T11:45:24 Vulkan: Enable Line Rasterization Emulation Android requires the same line rasterization for Vulkan, so this CL will enabled that workaround. Bug: angleproject:2830 Test: dEQP-GLES2.functional.rasterization.primitives.line* Change-Id: Ic28dd2e54c5cb9b29f8592952b2c0f29a5f97fd5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1715207 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Tim Van Patten a79c2440 2019-07-29T11:34:21 Make libEGL function pointers hidden in symbol table The libEGL_angle.so and libGLESv2_angle.so libraries are typically loaded into the same process each time, so we need to make sure there aren't any duplicated symbols which could violate ODR and lead to crashes or undefined behavior. In this case, the libEGL_angle.so function pointer names were colliding with libGLESv2_angle.so function names, causing crashes at runtime. The fix here is to mark the libEGL_angle.so function pointer symbols 'hidden', so they don't appear in the symbol table for other executables/libraries to see and can't be overridden by other symbols. Bug: angleproject:3751 Test: Embed ANGLE within dEQP.apk and verify no crashes Change-Id: Ibb78369374a4a68b3489a7dd7775c52e29fa37e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724909 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten cbabea73 2019-07-11T17:24:17 Vulkan: Desktop ETC/EAC formats support Initial attempt to give desktop ETC/EAC formats support. Bug: angleproject:3676 Change-Id: Id147b0c1808e30df77097d0c7ff6a06534554b93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1699307 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jiacheng Lu 3a36f306 2019-07-19T12:43:22 Always set matrix uniform to dirty when it updates Remove the dirty checking of matrix uniform update at frontend and always let backend update whenever glUniformMatrix* is called. Profiled with UniformsBenchmark/* with vulkan backend, performance increases around 6% when data being updated is changing and performance increases around 2% when data being updated stays same. Bug: angleproject:3705 Change-Id: I8eaf6a1231e634b69c6dc540db1b9d3a312bf45d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1709725 Commit-Queue: Jiacheng Lu <lujc@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
James Dong bf3d9333 2019-07-29T10:00:44 Vulkan: support relative offset in attrib bindings Handles the ES 3.1 relative offset parameter in vertex attributes by adding it to the binding offset. Test: ./angle_deqp_gles31_no_gtest --deqp-egl-display-type=angle-vulkan -n dEQP-GLES31.functional.vertex_attribute_binding.usage.single_binding.unaligned_offset_elements_1_aligned_elements Bug: angleproject:3598 Change-Id: Idbbd5ba4868a4dfc8f99188a84a5cd1374e09065 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1724453 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: James Dong <dongja@google.com>
Jiacheng Lu 758b12fa 2019-07-17T14:55:38 Filter out redundant depth&stencil state updates 1. Compare updating values with active ones at frontend when depth&stencil related gl call happens and do not set any unnecessary dirty bits. 2. Remove d3d and gl backends' checking of depth&stencil states when detect any dirty bits, as it is now being done at frontend. 3. Modification to graphics pipeline description update, make sure it syncs with gl::State initial value. 4. Change gl_vk::CullMode return type to VkCullModeFlagBits, as it only represents single value. Bug: angleproject:3700 Change-Id: Id3aa5186455ee3a10a9c147edad13944e3e41098 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1706903 Commit-Queue: Jiacheng Lu <lujc@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
angle-autoroll c405776e 2019-07-29T07:01:59 Roll ./third_party/glslang/src 42f813401bdf..7fc868349143 (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/42f813401bdf..7fc868349143 Created with: gclient setdep -r ./third_party/glslang/src@7fc868349143 The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I91cbab4ec63909cf62892905d0e6500e22261855 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1723835 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll d7e0a36a 2019-07-29T07:01:44 Roll ./third_party/spirv-tools/src f54b8653dd9d..9559cdbdf011 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f54b8653dd9d..9559cdbdf011 Created with: gclient setdep -r ./third_party/spirv-tools/src@9559cdbdf011 The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I27a15130e7b8786e1d2404a2cfa6954f9ddd339f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1723834 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jeff Gilbert a96b79f9 2019-07-26T17:33:16 Explicitly instantiate TIntermTraverser::traverse(TIntermNode *). (on behalf of RewriteAtomicFunctionExpressions) The compile will occasionally choose to inline all instances of this function, and therefore not export this entrypoint into the object file, leaving other TUs (RewriteAtomicFunctionExpressions) with missing link symbols. Bug: angleproject:3752 Change-Id: Ida778bcd897a85567680911a88aae88a3797aa93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721954 Commit-Queue: Jeff Gilbert <jgilbert@mozilla.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott a51232eb 2019-07-26T15:02:39 Vulkan: Split-out PBO and pack/unpack expectations Bug: angleproject:3209 Change-Id: I82e67345ce9f70b1b1d211b00b23d95dd53a44e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721188 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Tim Van Patten 35f02850 2019-07-23T17:20:25 Vulkan: Reduce getMaxConformantESVersion() to 2.0 We are currently returning a 3.0 context for Vulkan backends (issue 3425). However, we aren't quite 3.0 conformant yet, so this bug will drop that back down to 2.0 in getMaxConformantESVersion(). Bug: angleproject:3734 Test: dEQP Change-Id: I2c5a6ee0ddb3bd52fdc92fdc9b12cf3c6d8e0510 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1716244 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott 8d3077b8 2019-07-26T09:44:36 Vulkan: Expect additional texture-specification tests to run/pass Recent changes allow these to all run and pass! Bug: angleproject:3190 Change-Id: I6349b8d9aa90297e676f170361f468ac04b3150d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721171 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Yuly Novikov ce66a4f8 2019-07-26T16:27:04 Skip 2 end2end tests failing on 431.02 Windows NVIDIA driver ClearTestES3.RepeatedClear/ES3_Vulkan ShaderStorageBufferTest31.LoadAndStoreBooleanValue/ES3_1_D3D11 Bug: angleproject:3748, angleproject:3749 Change-Id: I54c6259d36c9993250e961d92a6d4b8e4349ed57 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721185 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jiacheng Lu 73e5e9b5 2019-07-22T15:26:17 Clang warn implicit float to int conversion 1. add '-Wfloat-conversion' in compiler flag for clang 2. fix existed implicit float conversion Bug: angleproject:3728 Change-Id: I0dc07eeb74c5d6dc480c6f0aa88bc75ab98e4292 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713741 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cody Northrop a2129356 2019-07-23T12:54:13 Vulkan: Add support for 2D array textures Includes changes from jmadill to align with Vulkan backend design. Correctly setting layer count and depth when the texture type is 2Darray. Vulkan requires depth of 1 for 2Darray textures. Bug: angleproject:3189 Change-Id: I0d58c33fcd75b1d768ea0308ac6e54230d8cfcc5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721169 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
James Dong 7e50f4cd 2019-07-25T09:58:51 Vulkan: Fix ES 3.1 vertex attribute bindings When handling dirty bindings, we were treating binding indices as if they were attribute indices, causing strange behavior. This change fixes the dirty bit handler to use the provided index properly and update the attributes that correspond to the binding index. Test: ./angle_end2end_tests --gtest_filter='VertexAttributeTestES31.OnlyUpdate*/ES3_1_Vulkan' Bug: angleproject:3598 Change-Id: I2bc3cd4da5f639a1301776fcf057a74368812c56 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1718786 Commit-Queue: James Dong <dongja@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 6e909862 2019-07-26T11:12:15 Update dEQP charts. The charts were regenerated, update the docs to point to the new charts. Also remove some redundancy (we don't need the overview to track differences in vendors) Bug: angleproject:3713 Change-Id: I2005031c4ca960d7f9afd80562957d31af795d61 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721190 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
James Dong 020abb8b 2019-07-24T11:33:49 Vulkan: invalidate translation buffers for SSBOs Translation buffers weren't being marked dirty after running a compute shader in which they are bound as SSBOs. This change invalidates all SSBOs after a draw or compute call. Bug: angleproject:3739 Change-Id: I66b56df7e619b55afc7e3da6b5613b6d050e06bb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1717144 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: James Dong <dongja@google.com>
Jiacheng Lu 3e9bc2a7 2019-07-26T10:23:32 Fix param name of glDrawArrays capture Bug: angleproject:3611 Change-Id: Idba4d49d36274db8545f2526f19f045f97031379 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1721173 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Clemen Deng f2412bca 2019-07-16T15:47:34 Get rendering to texture working Other small fixes for desktop compatibility Bug: angleproject:3620 Change-Id: I8e75bce1f850fb891c8bb6e16f79302a6d59276c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1707932 Commit-Queue: Clemen Deng <clemendeng@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 0716ce0a 2019-07-22T15:20:47 Re-add case to blitframebuffer workaround where src is outside of bounds. On Mac, blitFramebuffer calls fail if the source region is not enclosed by the framebuffer. In this case, we must naively clip the source region and adjust the dest region accordingly. This is slightly different behavior and may cause issues with scaling so we use a separate workaround. Also, Windows NVIDIA has a driver bug that affects Vulkan device creation after blitting large textures, so it should be included in the original workaround. This CL cleans up the workaround to use more helpers from ANGLE and to generally improve readability. Bug: chromium:830046 Change-Id: I50bd97449725b738036e6bd3af82362020d7eda8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713090 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll f002a637 2019-07-26T07:02:00 Roll ./third_party/glslang/src 9f2236e58ed0..42f813401bdf (6 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/9f2236e58ed0..42f813401bdf Created with: gclient setdep -r ./third_party/glslang/src@42f813401bdf The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I88b5be03e7f7ec2b442baa2a01033ac5ca97dd4d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1720290 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll eaef09c0 2019-07-26T07:01:44 Roll ./third_party/spirv-tools/src 3855447d93eb..f54b8653dd9d (9 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/3855447d93eb..f54b8653dd9d Created with: gclient setdep -r ./third_party/spirv-tools/src@f54b8653dd9d The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: Id79c4c5ce598fb2bb1206e3902ffede2aa8dc4c8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1720289 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Ian Elliott fab397e5 2019-07-25T10:18:50 Vulkan: Enforce an error when initializing a global with a non-const The ESSL 1.0 spec is clear that "initializers must be a constant expression." Yet, because of "legacy" applications (apparently just WebGL applications), the code was only issuing a warning and not an error. The "KHR-GLES2.shaders.negative.initialize" test requires an error be generated. This change splits the semantics, allowing GLES applications to get an error, and WebGL applications to get a warning. Note: This change is related to https://chromium-review.googlesource.com/829138 (for angleproject:2285). Bug: angleproject:3381 Change-Id: Ie243b7dd72102aeb52df506d121d1d2a8f6974d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1716617 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Jamie Madill c327370e 2019-07-23T12:54:12 Vulkan: Pass VkExtent3D to TextureHelper::init. Bug: angleproject:3189 Change-Id: I4b95240bb32fbc2b3d0c8f097e0552d0fe23417d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713094 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi c68e7cbc 2019-07-25T11:28:07 Vulkan: Fix image copy flipping The draw framebuffer was consulted for flipping instead of the read framebuffer. Revealed a bug with copy-with-transfer not taking source render target's level/layer into account. This test was failing on Linux/Intel because there the framebuffer is not flipped, so the transfer path was taken. Bug: angleproject:2954 Bug: angleproject:3723 Change-Id: If95bf97b8e0536302ed39999be47bf904283c9e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1718784 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi bbffb779 2019-07-25T11:24:39 Fix read framebuffer binding sync before copy image The READ_FRAMEBUFFER_BINDING dirty bit sync was missing from copy image functions. In the Vulkan backend, a cached value for the current read framebuffer was used to determine if the copy should flip in Y, and that cached value was out of date. Bug: angleproject:3723 Change-Id: I10e8a276a42c28fbedc9939f653a5a1f4a14e87b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1715483 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 08b97da8 2019-07-23T12:07:13 Vulkan: Fix staging buffer alignment for pixel sizes > 4 Previously, all non-compressed formats were satisfied with a 4-byte alignment. The introduction of float formats changes this. This change calculates the necessary alignment using the same code path as compressed formats. Also fixes RGB9E5's pixelByte being calculated as 3 instead of 4. Bug: angleproject:3731 Change-Id: I6abfd1c294e7f863eb99d2468eaac09e5d714039 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1715205 Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 557e3853 2019-07-24T18:16:18 Vulkan: Disable atomic counter buffer tests on AMD/Windows A likely driver bug is causing the subsequent OpenGL test to fail. Bug: angleproject:3738 Change-Id: I6ee5e9e7298a2adb3069a6e14ac83453fa34b50f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1716056 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Clemen Deng 8bb46c5b 2019-07-22T16:04:55 Refactor: add InternalFormat::isInt() Bug: angleproject:3727 Change-Id: I33ee85563e3b070b4b86afc37230d3f5af54f446 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713091 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jose Dapena Paz dd3de6f0 2019-07-22T21:17:52 Do not assume __has_builtin is available Compilation with GCC breaks as there is a build check using it. To avoid the problem, we declare the macro HAS_BUILTIN that maps to __has_builtin if it is defined, or 0 otherwise. Bug: chromium:819294 Change-Id: I105d566f08baa495fccd553d7b06eb8ce36621ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1713604 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll cd369bb8 2019-07-23T07:01:39 Roll ./third_party/spirv-tools/src 76b75c40a1e2..3855447d93eb (3 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/76b75c40a1e2..3855447d93eb Created with: gclient setdep -r ./third_party/spirv-tools/src@3855447d93eb The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I5d98e670ca5e5de9c2675cca7803e395e7f0d1d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1714120 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
James Dong 02407743 2019-07-22T10:56:35 Vulkan: implement indirect dispatch Implements indirect dispatch for Vulkan backend. Layout of dispatch structure is the same as OpenGL, so we pass in the buffer directly. Test: ./angle_deqp_gles31_no_gtest --deqp-egl-display-type=angle-vulkan -n 'dEQP-GLES31.functional.compute.indirect_dispatch.*' Bug: angleproject:3601 Change-Id: I94c6b1a86d3c24c1ca1bb6a78529b38909a2b91f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1710024 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: James Dong <dongja@google.com>
Jamie Madill cedea1d9 2019-07-22T17:02:25 Vulkan: Rename 'extents' param to 'glExtents'. Merely a minor refactor to clean up the diff of a subsequent CL. In the follow up we will also distinguish the GL extents from the Vulkan extents/layerCount pair. Bug: angleproject:3189 Change-Id: Ibbb79bf2e6d3f798243b424bacbfb2e5538bfecf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1709755 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>