Log

Author Commit Date CI Message
Jamie Madill fbffcf7b 2021-07-23T14:15:18 dEQP: Suppress two tests with undefined behaviour. dEQP-GLES3.functional.shaders.operator.unary_operator.minus.lowp_uvec4_vertex dEQP-GLES3.functional.shaders.operator.unary_operator.minus.mediump_uvec4_vertex See bug for more details. Bug: angleproject:6214 Change-Id: Ibc69dbcd1524470da620c31d41da20f69dfbaae2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049254 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 8f6f52b5 2021-07-23T10:14:27 GL: Temporarily disable sync control on all GPUs on Linux This workaround is supposed to be limited to Intel GPUs with a recent mesa version, but due to anglebug.com/6174 is not actually enabled on dual-GPU systems. The workaround is temporarily disabled on all GPUs until said issue is fixed. Bug: chromium:1187475 Bug: angleproject:6174 Change-Id: Ieee430b1e2a04e36d6f8d60cabc9e391f0e49988 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048237 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten 348eaf15 2021-07-23T11:26:09 roll_aosp.sh: Add dcheck_always_on = false The GN args 'dcheck_always_on' was recently enabled by default, which resulted in an increase to ANGLE's APK size in AOSP from 16.3MB to 20.6MB. Adding 'dcheck_always_on = false' to roll_aosp.sh to disable the feature reduces the APK back to the original 16.3MB size. Bug: b/189125396 Change-Id: I606c30fe49291fa893228644c4b1fe4dd5fbeabf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048933 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill f18bb9c0 2021-07-23T08:57:19 Roll Chromium DEPS manually. Because the packages list changed, the roll_chromium_deps script was failing. Manually roll and update the failure assertion to make the required action clear. Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/488aac0b88..2ef6eae721 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/8c3404999d..b8e44ff539 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/9211d9e376..368be24f93 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/0ab40df9d1..12d2cf1a46 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/76bd51b56b..ff9352c23f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * third_party/r8: Nu_mvQJe34CotIXadFlA3w732CJ9EvQGuVs4udcZedAC..gXyBDv_fM87KnLcxvF5AGV5lwnm-JXIALYH8zrzdoaMC * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/2db94c0aa3..609c3a5216 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/4682254401..7668723204 * tools/skia_goldctl/linux: 4iy6PO3bO0fujafbQ4I4eWhD8ErkBKf5xAnGzPrziIUC..kaeAzSau0swqM5_PxvyRfHSMDvXSjyDsqgPiP5rpoYEC * tools/skia_goldctl/mac: _9rtsnZzHBJ4851DtK33jnz7UzMZ77SqJ9sYpciBwiMC..sZ1aXBq0Ae2kaeyAtTGpMuEEGdcqMzga658pAaCAl0IC * tools/skia_goldctl/win: NsVk6Er035r7JVK4foqbqAksO65XEzgIT9Bjwf0Q1q0C..67QQ3-xX3VTYrb9YrwUR0VedVqNq7sebZZeHS823QdcC No update to Clang. Bug: angleproject:6211 Change-Id: I152572fd15066a100cb5f379f7adbd967dc6eac8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048852 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 62628799 2021-07-21T22:55:22 Vulkan: SPIR-V Gen: Support dEQP A temporary condition for direct SPIR-V generation is added to test expectations while this work is in progress, so test suites can be partially enabled. 32 tests are currently failing. Bug: angleproject:4889 Change-Id: Icf0f6ef80d30fdb7564d8ecf928e67ca58ace86f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042556 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexis Hetu 729cbcf1 2021-07-23T11:18:18 Make Display and X11 available in the same build Chromium can use the 'use_ozone' and 'use_x11' build flags simultaneously, so we need the Vulkan display to still be selectable, even when the 'use_x11' flag is used. This is required to make SwANGLE work with Ozone/Wayland, which is going to use EGL_PLATFORM_VULKAN_DISPLAY_MODE_HEADLESS_ANGLE when SwANGLE is requested. Bug: chromium:1231934 Change-Id: I2ac1d3d9bc231608d7f77e9a2540f4c538840076 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049351 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Jamie Madill 91b35c90 2021-06-30T09:28:17 infra: Add perf results processing script. This script is a modified version of the Chromium script: https://chromium.googlesource.com/chromium/src/+/main/tools/perf/process_perf_results.py The primary change is to add additional build info to the histogram set before upload. This additional info isn't available to the test harness and is required for the perf dashboard upload. We can also use this as a basis for uploading to the Skia perf dashboard. Test: led launch Bug: angleproject:6090 Change-Id: Ie439ed34a24ce66f4b60b947f221e4cb96cf7d25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2997002 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2c60b88a 2021-07-23T09:46:37 Make the trybot exclusion filter a proper regex. Bug: angleproject:6212 Change-Id: I20ca648675a5dd4773d1c3e44b251388318197f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048854 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 646c02b9 2021-07-23T09:29:55 Update angle_assert_always_on condition. A prior CL would miss the standalone case. Bug: chromium:1227171 Change-Id: Ib1c06d0ae7eed0feb082516690b227b964de72b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048853 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill aed52e67 2021-07-23T08:43:17 Set dcheck_always_on on every ANGLE builder. This GN argument is necessary because some build components reference it directly. Letting it be specified implicitly will caused undesired side-effects. Bug: chromium:1227171 Change-Id: Ib12cc3add58ecc8ae0360f816d30587158d756c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048850 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 9f7a86a8 2021-07-21T14:54:03 Vulkan: SPIR-V Gen: Fix bugs with matrix ops A number of matrix operations are fixed in this change, such as matrix/scalar, ++matrix etc. This change fixes most of the failing dEQP-GLES2.* tests. The test suite will be enabled once the remaining 32 failures are fixed. Bug: angleproject:4889 Change-Id: I0905dfaeabe50716432ce354b890be35f2a16e59 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042555 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 951b04bb 2021-07-21T12:20:13 Vulkan: SPIR-V Gen: Support scalar constructors In GLSL, the scalar constructor can be given a vector and matrix, in which case the first element is selected. This case was not previously handled. Bug: angleproject:4889 Change-Id: Ibf276883fc7396b750981a4e469ff9b152c6e700 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042554 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 45d4641a 2021-07-21T10:58:29 Vulkan: SPIR-V Gen: Support tessellation shaders Bug: angleproject:4889 Change-Id: I7370e037a82689260e27bfd5e72c5c8c982efa58 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041624 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 7f199d75 2021-07-20T00:11:23 Vulkan: SPIR-V Gen: Support geometry shaders Geometry shader built-ins are implemented. A bug in DeclarePerVertexBlocks is fixed w.r.t to gl_PerVertex arrays and a new AST validation option is added to catch that sort of error. Bug: angleproject:4889 Change-Id: I40b2929e450eac8ae840bbf1a1583e6c4c047c88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041623 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten 05716b9f 2021-07-22T16:01:06 Cleanup license_text to remove missing license files The initial list of files speficied for license_text in generate_android_bp.py included license files that aren't present after issuing: git clean -f -x -d -f While the list will build correctly when rolling ANGLE locally, since roll_aosp.sh doesn't issue a 'git clean', it fails to build on the Android presubmit bots. Bug: b/191882454 Test: git clean -f -x -d -f ; m ANGLE -j50 Change-Id: I31efba1f5030b118838ba1a21501f32200c93db3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046958 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Tim Van Patten 2ec44d07 2021-07-22T14:15:03 List all license files in Android.bp Update generate_android_bp.py to list all of the license files in external/angle. Bug: b/191882454 Change-Id: Ie13fb9199c7216b5468bf91994526fdcd8552be1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046509 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill 27ccdc85 2021-07-22T13:13:45 Add Chromium perf result processing script. We will override this script in a follow-up CL to meet ANGLE's specific needs. Bug: angleproject:6090 Change-Id: I8d3a326645367e90ae79f49ef15ace700d6af106 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042213 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Alexis Hetu 20ae10c2 2021-07-22T11:46:40 Enable SwANGLE on all ozone platforms. SwANGLE should be available on all ozone platforms. This will also compile the vulkan backend. Bug: chromium:1227864 Change-Id: I4971e52f45e70fed91567c3d2f369dafe160ff4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043626 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Cody Northrop b5630d5c 2021-07-19T20:39:02 Capture/Replay: Add textures to resource tracking This CL: - Shifts resource reset tracking to be stored in an array of structs indexed by type. This helps curb the complexity of adding more resource types. - Moves buffer and program tracking to the new layout. - Adds textures to the resource tracker, using new layout. Note that only aspects common to all ResourceIDTypes have been moved to the new layout. Unique pieces of data, like buffer mapping state and GLSync handling, remain in resource tracker alone. Since texture setup is quite involved, this CL takes the approach of having each call applied to two call chains at the same time; SetupReplay calls and ResetReplay calls. ResetReplay ends up with a sequence similar to buffers: ... const GLuint deleteTextures[] = { gTextureMap[1], gTextureMap[2], ... gTextureMap[n]}; glDeleteTextures(<count>, deleteTextures); ... glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(1, 0); glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(2, 0); glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(3, 0); ... glBindTexture(GL_TEXTURE_2D, gTextureMap[1]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 9729); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_R, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, 519); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0); glTexImage2D(GL_TEXTURE_2D, 0, 6406, 512, 512, 0, GL_ALPHA, GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte *>(&gBinaryData[183263280])); glBindTexture(GL_TEXTURE_2D, gTextureMap[2]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 9987); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, 519); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 6); glTexStorage2D(GL_TEXTURE_2D, 7, GL_COMPRESSED_SRGB8_ETC2, 64, 64); ... Test: PUBG Mobile MEC Bug: b/180418573 Bug: angleproject:6087 Change-Id: I9f8e151c12aec5b2b7af376b8e0ff644ff9c61c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3016114 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill c408926f 2021-07-22T12:00:59 Revert "EGL: GLES: Implement GL_EXT_protected_textures" This reverts commit 6210a9b34a721df2c84cf69170ad9bf7ba40e4aa. Reason for revert: Suspected for breaking ANGLE->Chrome roller. Bug: angleproject:6204 Original change's description: > EGL: GLES: Implement GL_EXT_protected_textures > > Implement EGL_EXT_protected_content Images > Add protected member to Images and Textures > Add error when creating objects if not supported or > does't match native buffer > When creating siblings pass protected state > Add extension caps > Add Validation > Add GetTexParameter and SetTextparameter > Add protected to Texture and state > Expand tests for images and textures > > Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest > > Bug: angleproject:3965 > Change-Id: I35a89b4e80bba6d9b6831c68e71630eef304dacb > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2802852 > Commit-Queue: Mohan Maiya <m.maiya@samsung.com> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:3965 Change-Id: Ia3ef260a17097b474189ccad5b235a9db99ee00b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043889 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Jamie Madill c5f83c34 2021-07-22T11:56:25 Revert "Vulkan: Suppress VVL errors triggered by external formats" This reverts commit f46df3978ab6102768048a6bf40e6f4989276065. Reason for revert: VVL change rolled into ANGLE + Chrome. Original change's description: > Vulkan: Suppress VVL errors triggered by external formats > > Since several tests are hitting these and it may be a VVL bug, > moving to ignore rather than skips. > > Bug: angleproject:6155 > Bug: angleproject:6168 > Change-Id: I38a5be8d792b8b13a490be895a68349bffe69c6e > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028809 > Reviewed-by: Tim Van Patten <timvp@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Mohan Maiya <m.maiya@samsung.com> > Commit-Queue: Cody Northrop <cnorthrop@google.com> Bug: angleproject:6155 Bug: angleproject:6168 Change-Id: I11696095300c214ca0b68624b0eb6763ba9d31f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043888 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 03cf7888 2021-07-22T08:32:25 Test Runner: Remove extra quotes from histograms. We were double-quoting the test names. Bug: angleproject:6090 Change-Id: I69ce089ef20068b408de7156bdbade922cdefe95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043890 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 8ddd1807 2021-07-22T11:14:16 Roll vulkan-deps from 436e27578f75 to d85297cbd31b (10 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/436e27578f75..d85297cbd31b Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/18f3cd6810..cd22336a38 * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/1d4e3a7e3a..cf653e4ca4 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/033768c24b..d9f8925785 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/33a87ce6da..a4ee3cacbb * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/194db6870e..893fc802e4 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icd49cf0abb072acb3c9bd2c79cfef3a3f8103e23 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3045222 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e759ff88 2021-07-22T07:02:21 Roll Chromium from f8ef6fcfb849 to 208fab302a17 (1307 revisions) https://chromium.googlesource.com/chromium/src.git/+log/f8ef6fcfb849..208fab302a17 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/fd86d60f33..488aac0b88 * buildtools/linux64: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * buildtools/mac: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/7d5c92f6cf..e8bf577fbf * buildtools/win: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f619f21d40..8c3404999d * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/8c49b419c2..0ab40df9d1 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9ac1fdf373 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/c81b8b948f..131233f789 * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/df951e112c..2db94c0aa3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/49df801dea..4682254401 * tools/skia_goldctl/linux: up6EUcZzuFZnm2JCEV1eW0TwCEAZjPcqtS2CsZN-3qAC..4iy6PO3bO0fujafbQ4I4eWhD8ErkBKf5xAnGzPrziIUC * tools/skia_goldctl/mac: eR_S1Urlw9be4WKiQcXwEcBn9KiDrWknodT82I6vw-kC.._9rtsnZzHBJ4851DtK33jnz7UzMZ77SqJ9sYpciBwiMC * tools/skia_goldctl/win: pLY1rCmGsL8vtV0wWxgqY3sOWkwIxuRh6PMIn_0BDcAC..NsVk6Er035r7JVK4foqbqAksO65XEzgIT9Bjwf0Q1q0C No update to Clang. Bug: angleproject:6090,angleproject:6198 Tbr: jmadill@google.com Change-Id: I30e0cc2e8d8820cca7abb589a35cbca09d325a30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3045218 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 0e1c90cf 2021-07-21T10:24:26 Translator: Validate function parameter qualifiers This change cleans up a confusion in EvqConst and EvqConstReadOnly, where the former was frequently used instead of the latter for function parameters. The change makes the following renames to make the intent of the relevant qualifiers clearer: EvqIn -> EvqParamIn EvqOut -> EvqParamOut EvqInOut -> EvqParamInOut EvqConstReadOnly -> EvqParamConst Bug: angleproject:4889 Change-Id: Idedd32c08a91de069b91b1657d6b783dddece04a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041622 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 6e261453 2021-07-20T22:34:33 Vulkan: SPIR-V Gen: Fix I/O block arrays Since the qualifier on intermediate nodes are EvqTemporary, the code that autodeduced the block storage of I/O blocks was incorrectly assigning them std140 when an indexed I/O block array was encountered. This resulted in duplicate types in the SPIR-V. This is generally benign (other than creating an unnecessary type) except for gl_PerVertex as it adds BuiltIn decorations. gl_PerVertex may be an array in geometry and tessellation shaders. Bug: angleproject:4889 Change-Id: Iaa8e414ae01a4be127dc52df0e9406546b23d24c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041621 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll d6a7b017 2021-07-21T12:24:52 Roll vulkan-deps from a42815069bad to 436e27578f75 (16 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/a42815069bad..436e27578f75 Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/e51630595f..18f3cd6810 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f084bcfe2b..033768c24b * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/0193e158bc..872fa25bb6 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/99c0b1433a..a0c69f0d3a * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/d444097efd..194db6870e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I802bb8f42ef0c62d8f17b47b6652b22c0d498541 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043744 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Tim Van Patten 8a737c5d 2021-07-21T16:38:05 Capture/Replay: Update unpack state in Shared MEC The shared context state MEC performed by CaptureSharedContextMidExecutionSetup() needs to include updating the pixel unpack state before capturing texture contents. Otherwise, computeRowPitch() will compute the wrong value, leading to a crash in memcpy() when capturing Pokemon GO. Bug: angleproject:6203 Change-Id: Id1b2d0b4f3bc79e615778ba513f50aabaeb4a56e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3044356 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Nicolas Capens f8d277e4 2021-07-21T15:14:16 Document the need for is_component_build = false Setting `is_component_build = false` in the GN args is highly recommended for standalone builds on Windows, to support the common practice of moving libEGL.dll and libGLESv2.dll to an application's directory. It makes them self-contained instead of depending on other DLLs (like e.g. ext-ms-win-kernel32-sidebyside-l1-1-0.dll). One notable exception is that the non-component build still depends on d3dcompiler_47.dll, if the Direct3D backend is being used. Bug: angleproject:6202 Change-Id: Id13e902d3169b37ec00a8065d9063ec7d683134b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042543 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@google.com>
Jamie Madill 1a4ac82a 2021-07-21T09:39:46 Vulkan: Disable border color on SwiftShader. A bug with floating point clamping is breaking some tests on SwS. Bug: angleproject:6200 Change-Id: Id608f5610a09e85f1bc41e38f20c6f7f0330f77b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041741 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll b129170f 2021-07-21T10:01:02 Roll SwiftShader from 7a7993b54e62 to 915947134128 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/7a7993b54e62..915947134128 2021-07-20 mail@eliasnaur.com Add missing dependency for LLVM 10 CMake builds If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icfed951a2265a1759554ad67685e26e7bd977b2b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043778 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Brandon Schade f9dbd4ef 2021-03-29T16:31:26 Vulkan: Add Validation checks in FramebufferTextureEXT This change makes FramebufferTextureEXT set a validation error if <level> is not a supported texture level. This change also makes FramebufferTextureEXT set a validation error if <texture> is the name of a buffer texture. Test: KHR-GLES32.core.geometry_shader.layered_fbo.fb_texture_invalid_level_number Test: KHR-GLES32.core.geometry_shader.layered_fbo.fb_texture_argument_refers_to_buffer_texture Bug: angleproject:5579 Change-Id: Iedba8adc8faec02822374c3c1862b7abd031fcc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2796152 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Shahbaz Youssefi e9decf0c 2021-07-19T14:29:21 Vulkan: SPIR-V Gen: Support framebuffer fetch Bug: angleproject:4889 Change-Id: Ia75b45b5d0f6cb3b6ca8a8f8a987bb857e45ad33 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040120 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi a3df80ea 2021-07-19T17:15:13 Translator: Validate AST consistency w.r.t function calls This ensures that tree transformations don't create invalid function calls. Additionally, it's validated that no raw function calls are issued, as that's deprecated. Bug: angleproject:4889 Change-Id: Iabbb493dcc0a5654bbb5f930e402bf3492c89979 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040119 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 05eb0a32 2021-07-19T16:14:34 Translator: Allow subpassLoad in AST in ESSL subpassLoad is available to desktop GLSL, but not GLSL ES. With this change, subpassLoad is made available internally to the AST so that framebuffer fetch's use of this built-in can be simplified. Additionally, this makes the tree more consistent in that there's no function call without a corresponding function declaration. A follow up change will add an AST validation to enforce this. Bug: angleproject:4889 Bug: angleproject:5454 Change-Id: I3fa502dc4b29eab7f34940466e283cffd218d746 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040118 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jeff Vigil 6210a9b3 2021-03-25T15:43:06 EGL: GLES: Implement GL_EXT_protected_textures Implement EGL_EXT_protected_content Images Add protected member to Images and Textures Add error when creating objects if not supported or does't match native buffer When creating siblings pass protected state Add extension caps Add Validation Add GetTexParameter and SetTextparameter Add protected to Texture and state Expand tests for images and textures Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest Bug: angleproject:3965 Change-Id: I35a89b4e80bba6d9b6831c68e71630eef304dacb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2802852 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jeff Vigil d2b659f9 2021-03-25T15:40:58 EGL: implement EGL_EXT_protected_content Context Add Validation check to Contexts and Surfaces Add Vulkan protected memory features and properties Add protected member to Surfaces and Contexts Implement hasProtectedContent in Vulkan Add QueueFamily helper, extent DeviceQueueMap Protected Swapchains always on for Android Add EGLProtectedContentTest Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest Bug: angleproject:3965 Change-Id: I9352b1e594f71bb4e89cee7137a468940d186b1b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2800413 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi a8807cbf 2021-07-17T00:00:27 Vulkan: SPIR-V Gen: Support interpolateAt* The interpolateAt* builtins take their first argument as a pointer, so only the OpAccessChain result should be given to the corresponding SPIR-V instruction. A test is written in this change to handle interpolateAt* when given a swizzled lvalue, which is not representable in SPIR-V. This can be supported by having the AST transform: interpolateAtX(value.zy) to: interpolateAtX(value).zy which can be done right when the function is parsed and the AST node for it is created (by taking the swizzle out of the parameter and applying it to the node). However, swizzled lvalues as parameter to interpolateAt* is only allowed in desktop GLSL, and so the test is disabled. From the GLSL ES3.2 spec: > Component selection operators (e.g. .xy) may not be used when > specifying interpolant. Bug: angleproject:4889 Change-Id: I043969f22011e6171c7ae225ded3a5013e8cfa4e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035588 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill fd0579ac 2021-07-20T09:46:27 trigger.py: Add -realm to swarming args. This should fix recent permissions changes. Bug: chromium:1231092 Change-Id: Ie9b39449c861f3ab774334c4d392d1700c638ea9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040565 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Andrii Shyshkalov <tandrii@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Ivan Murashov 7108f83c 2021-07-20T13:16:44 GCC: Remove double declaration of ContextSet After the CL https://chromium-review.googlesource.com/c/angle/angle/+/2965780 the build with GCC failed with error: /third_party/angle/src/libANGLE/Display.h:325:37: error: declaration of 'typedef class std::__1::set<gl::Context*> egl::Display::ContextSet' changes meaning of 'ContextSet' [-fpermissive] /third_party/angle/src/libANGLE/Display.h:75:7: note: 'ContextSet' declared here as 'using ContextSet = class std::__1::set<gl::Context*>' To fix the error the double declaration of ContextSet is removed. Bug: angleproject:5878, chromium:819294 Change-Id: Id9e52061af53ea18dd5d13b960daaa67a14f61ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3038804 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill e635f6c2 2021-07-20T08:41:07 Add -Wno-implicit-fallthrough to GLES 1 CTS. Bug: angleproject:6198 Bug: chromium:995993 Change-Id: Ib8eb640d567c63d85645f64cc870a286227fb9c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040160 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jeff Gilbert afda22b0 2021-07-19T16:46:50 Define ANGLE_IS_64_BIT_CPU in common/platform.h. This is more reliable and reduces reliance on build flags. Vendoring into Firefox, it's not trivial to replicate build flags, but C++-native checks always work. Bug: angleproject:6186 Change-Id: Idafd4ef1954efbfa79eae86cddfaa8f2e3992296 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036589 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll d100187f 2021-07-20T10:01:01 Roll SwiftShader from c6747d98397d to 7a7993b54e62 (16 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/c6747d98397d..7a7993b54e62 2021-07-20 capn@google.com Remove -Xclang -fuse-init-array from the Android build flags 2021-07-19 capn@google.com Move remaining Subzero x86 traits to their corresponding class 2021-07-19 capn@google.com Move Subzero Inst traits to the Inst header/source 2021-07-19 capn@google.com Move Subzero Assembler traits to the Assembler header/source 2021-07-19 capn@google.com Refactor AsmAddress creation 2021-07-19 capn@google.com Make AsmAddress producing methods static 2021-07-19 capn@google.com Increase Subzero x86-64 stack alignment to 16 2021-07-19 capn@google.com Fix RequiredStackAlignment initialization 2021-07-19 capn@google.com Rename Subzero Address to AsmAddress 2021-07-19 capn@google.com Rename Subzero traits Operand to AsmOperand 2021-07-19 capn@google.com Specialize Subzero X86 backends for 32- or 64-bit 2021-07-19 capn@google.com Don't templatize based on X86 traits 2021-07-19 capn@google.com Deduplicate X86 condition codes 2021-07-19 capn@google.com De-templatize the IceAssemblerX86Base class 2021-07-19 capn@google.com Duplicate X86 headers into X8632 and X8664 ones 2021-07-19 capn@google.com Define specialized PoolTypeConverter constants in the header If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I6a3818c2961e05bbfbeb5efac2ce9e495f3a832d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040826 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 748a6d31 2021-07-20T10:01:52 Roll vulkan-deps from 7c4121a2cfd0 to a42815069bad (28 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/7c4121a2cfd0..a42815069bad Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/4b7b86d568..9158061398 * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/be3988b13c..e51630595f * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/640b17b5fb..f084bcfe2b * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/8b83ca019c..d444097efd If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I32ca60c8087c6107f39ed0eb13baec3b997beaa5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040923 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 32196d8f 2021-07-16T14:49:08 Vulkan: SPIR-V Gen: Support built-ins with out parameters Some built-ins have out parameters; modf, frexp, uaddCarry, usubBorrow, umulExtended and imulExtended. In SPIR-V, they are translated as such: - modf and frexp: Returns the same result as GLSL, with a pointer to store the output parameter. Since SPIR-V cannot create pointers to swizzles, a temp variable is used in that case. - uaddCarry, usubBorrow, umulExtended and imulExtended: These return a struct in SPIR-V, which contains the two output parameters; with lsb in field 0 and msb in field 1. Bug: angleproject:4889 Change-Id: Ic5114f74b9c1013093007e91939f78d5218f2a07 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036088 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jeff Gilbert 6a86d207 2021-07-16T18:28:13 Add a feature flag allowES3OnFL10_0 to allow ES3 on d3d10.0. (Originally by Jeff Muizelaar <jrmuizel@gmail.com>) This lets us run WebRender on devices that only support D3D 10.0. Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1620075 Bug: angleproject:6189 Change-Id: I77c09851c50dee206702b1da25a9ef0c05eeb6c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036598 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jeff Gilbert <jgilbert@mozilla.com>
Jeff Gilbert 4b74189b 2021-07-19T16:19:12 Add missing header to build config. Bug: angleproject:6185 Change-Id: Ia3292935489e808bc53a6df3723d81355789b460 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036588 Commit-Queue: Jeff Gilbert <jgilbert@mozilla.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 60d76ec1 2021-06-25T17:35:22 Trace Tests: Autodetect Goma. Checks for the existence of the compiler_proxy process. Bug: angleproject:6102 Change-Id: I58848dc7cd62aeb65c28990212f29df6ff66db1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2989672 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Kenneth Russell b3cbfd55 2021-07-07T12:31:57 Fix multiple end2end crashes in direct-to-MSL compiler. This set of changes: - Adds a single place (CompilerMtl::useDirectToMSLCompiler) where the direct-to-MSL compiler can be enabled, still at compile time rather than run time. It is still disabled by default. - Initializes MTLWaitableCompileEventImpl::mShader, without which all shader compiles crash. - Fixes a mismatch of the ANGLERasterizerDisabled variable name in the generated MSL. - Removes the transform feedback bindings as an argument to the vertex shader's main0(). Transform feedback support needs to be reimplemented in this compiler backend. - Added an option to the DriverUniform class to emit as either an interface block or a struct. The direct-to-MSL backend assumes it is a struct. - Disable variable reference validation when referencing either sample mask or rasterizer discard functionality in the shader. - Disable struct usage validation when inserting references to ANGLE_TextureEnv. This occurs during pipeline rewriting and it's infeasible to disable it at that point, so disable it during pipeline rewriting - which means it's disabled for all shaders. - For angle_end2end_tests, disable the file API hooking which disables the Metal shader cache. This speeds up the tests significantly - by roughly a factor of 5. With these changes, several hundred angle_end2end_tests run without any assertion failures, though still with many test failures. The next crash is in: GLSLTest.NamelessScopedStructs/ES2_Metal and will likely require a larger bug fix, or more changes to be upstreamed from WebKit's repository. Bug: angleproject:5505 Change-Id: Ia1ea9a13867f00035d4aeccf907fd032255588e3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3010486 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill 2b86e2d6 2021-07-19T10:30:57 GN: Update dcheck/assert conditions. In preparation for a Chromium change that makes dchecks enabled by default in Release builds, we'll keep ASSERT disabled in Release by default. We add a new flag 'angle_assert_always_on' for controlling ANGLE ASSERT behaviour. Also slightly refactors the direct SPIR-V generation GN. Chromium CL: https://crrev.com/c/2893204 Bug: chromium:1225701 Change-Id: I01a6def28d7c21e771e9800889a6b9c274972de2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035447 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Dirk Pranke <dpranke@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8c1cbc5a 2021-07-16T14:01:53 Implement EGL_KHR_mutable_render_buffer in the front-end. Note that we do not currently expose any mutable configs. Bug: b/192352791 Change-Id: Ib97f7889fedd91d09ef32dc7e7494ea4476cd7bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035583 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 011ef7ed 2021-07-09T01:33:57 Revert "Ignore VUID-VkSpecializationMapEntry-constantID-00776" This reverts commit 0beafe862b4c21299d40b5ffcf98816828254a2a. Reason for revert: VVL error no longer reproducible Original change's description: > Ignore VUID-VkSpecializationMapEntry-constantID-00776 > > New check added in > https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/2903 > Blocks VVL rolls. > > Bug: chromium:1226682 > Change-Id: Iaf12187c33a0c3736acae6e772277dbe6aa4c402 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3007137 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bug: chromium:1226682 Change-Id: I7df7373fb52a1a64d94fd1973927cef4f89f2f05 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3017555 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Torne (Richard Coles) d84d1288 2021-07-16T12:08:03 android: Explicitly specify exported activities. Android 12 requires all components with an <intent-filter> to explicitly specify whether they are exported, instead of being exported by default. Update various remaining cases in our tests/sample code/tools. Bug: chromium:1223110 Change-Id: Iab37881d947da25d771bf757d2f7581ad782c73f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035442 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Mohan Maiya 9a938e82 2021-07-15T13:41:43 Bug fix in ValidateCopyImageSubDataBase ValidateCopyImageSubDataBase had a few missing validations and was returning the incorrect error enum. Bug: angleproject:3593 Test: dEQP-GLES31.functional.debug. negative_coverage.callbacks.buffer.copy_image_sub_data negative_coverage.log.buffer.copy_image_sub_data negative_coverage.get_error.buffer.copy_image_sub_data error_filters.case_24 Change-Id: I6f96c49ae6cf584559cb56fc614ac289b5e00c77 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2970944 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Mohan Maiya 5c8bf081 2021-06-08T13:12:24 Vulkan: Add support for YUV internal format extension 1. Add a function to upload YUV image data to textures 2. Modify stageSubresourceUpdate method to account for YUV images 3. Create VkSamplerYcbcrConversion when initializing ImageHelper 4. Update hasImmutableSampler to account for native YUV format support 5. Skip initializeNonZeroMemory for YUV formats Bug: angleproject:5773 Test: Texture2DTestES3.TexStorage2D*Yuv*Vulkan* Change-Id: I270f04bbf903cf2bf19f100eb95f32953d491c39 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2947767 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 0a83d958 2021-07-19T09:52:13 Capture/Replay tests: Fix missing usage of ApplicationDir. This was changed to ModuleDir in http://crrev.com/c/3035444 Fixed the capture/replay self-tests. Bug: chromium:1219969 Change-Id: Iaada421e9748db1e8afe17acf0705d5a89db6edb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035248 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jeff Gilbert 75c0d67c 2021-07-16T18:05:36 Build fixes needed by Firefox circa 2021-feb. Bug: angleproject:6187 Change-Id: Ife2c9f08ca213358b8fb06a858664d235a860730 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036592 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll a7056fe6 2021-07-19T11:53:03 Roll VK-GL-CTS from 6b9a0f391fa4 to 571256871c2e (17 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/6b9a0f391fa4..571256871c2e 2021-07-16 alexander.galazin@arm.com Use uintptr_t in the framework 2021-07-16 alexander.galazin@arm.com Use [u]int64_t in the framework 2021-07-16 gleese@broadcom.com Extend image tests to support formats with no formats 2021-07-16 gleese@broadcom.com Define a framework function for getting SPIR-V format tokens 2021-07-15 piotr.byszewski@mobica.com Test blitting from compressed formats 2021-07-15 siglesias@igalia.com Add test of vkCmdCopyImage with both layers and mipmaps 2021-07-15 rgarcia@igalia.com Test dynamic topology with tessellation shaders 2021-07-15 gleese@broadcom.com Remove extended image format capabilities from more tests 2021-07-15 gleese@broadcom.com Simplify image extend operand tests for extended formats 2021-07-15 alexander.galazin@arm.com Use [u]int16_t in the framework 2021-07-15 alexander.galazin@arm.com Use [u]int8_t in the framework 2021-07-15 alexander.galazin@arm.com Use [u]int32_t in the framework 2021-07-15 alexander.galazin@arm.com Require to enable implicit layers 2021-07-14 jajones@nvidia.com Fix FreeBSD build of VK_EXT_physical_device_drm tests 2021-07-09 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/master 2021-07-09 alexander.galazin@arm.com Deprecation notice for Vulkan CTS 1.2.3.x 2021-07-09 siglesias@igalia.com Added tests to check ignored Vk*PipelineCreateInfo members If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC cnorthrop@google.com,angle-bots+autoroll-info@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com,angle-bots+autoroll-info@google.com Change-Id: I3be9b8f86434efa3e0f09b8de96797840b27b1f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3037214 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill a3f44ab8 2021-07-19T08:23:27 Vulkan: Remove loader logging message in RendererVk. This was causing issues with a Chrome test. Bug: chromium:1230474 Change-Id: I0e5e3df5c9ad5774d6f5a2b41f4f1429000fe81e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035247 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 4ee176ab 2021-07-19T11:15:02 Roll SwiftShader from ba18c78e4696 to c6747d98397d (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/ba18c78e4696..c6747d98397d 2021-07-19 adrian.ratiu@collabora.corp-partner.google.com Backport LLVM fix for mallinfo deprecation If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: I55f120389b2c651b9f13f31e20a093210e90cb0f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3037890 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yang Gu fb26ba6a 2021-07-06T14:24:29 Extend Intel graphics driver version to 2 fields The 4th field of Intel new graphics driver will overflow soon. For example, the lastest driver version is 27.20.100.9466 and the 4th field, 9466, will meet the maximum 9999 soon. Future driver will bump the 3rd field from 100 to 101. This CL extends driver version check from 4th field to both 3rd and 4th fields. Check below 2 documents for more details. https://www.intel.com/content/www/us/en/support/articles/000005654/graphics.html https://docs.google.com/document/d/1Xm4afyGR3Ow3W2G-uig9fLQR01XzmSXeanM9OXDVhlg/edit#heading=h.k8onwbxk2ig Bug: angleproject:6138 Change-Id: Iefb1d56b48d0f08e79c329c422a6ef142b33553d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3007570 Commit-Queue: Yang Gu <yang.gu@intel.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 926fe357 2021-07-19T07:01:44 Roll Chromium from ac347590d69b to f8ef6fcfb849 (67 revisions) https://chromium.googlesource.com/chromium/src.git/+log/ac347590d69b..f8ef6fcfb849 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * testing: https://chromium.googlesource.com/chromium/src/testing/+log/36da2dc511..f619f21d40 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..5cb305306a * tools/luci-go: git_revision:d10ff2af1182ccaad573bc5acb84a36f4c280876..git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756 * tools/luci-go: git_revision:d10ff2af1182ccaad573bc5acb84a36f4c280876..git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756 * tools/luci-go: git_revision:d10ff2af1182ccaad573bc5acb84a36f4c280876..git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/ed1db6c6b3..df951e112c * tools/skia_goldctl/linux: v3HXOS7MJkC2TfycHGZS1dHlQ_BosbzqLeuDXXLbxMUC..up6EUcZzuFZnm2JCEV1eW0TwCEAZjPcqtS2CsZN-3qAC * tools/skia_goldctl/mac: nx0V9Budj8K1DfPIdKA9oakeQE7SPTMIvVwqzX0DkF4C..eR_S1Urlw9be4WKiQcXwEcBn9KiDrWknodT82I6vw-kC * tools/skia_goldctl/win: 5vRobMZ1N26UvonRAdJZ66IEfzd3vF8r6z8j4Nqrhc8C..pLY1rCmGsL8vtV0wWxgqY3sOWkwIxuRh6PMIn_0BDcAC No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I33441c8cc8defd3a974de75172e16ac403d88a3b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3037212 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Cody Northrop 5fb3a549 2021-07-18T22:15:12 Skip GLSLTest_ES31.BoolInInterfaceBlocks/ES3_1_OpenGL AMD Linux Bug: angleproject:6192 Change-Id: I853864cfce5edb78be940c6f59f22187dce7e47b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3037629 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 4d9e1f23 2021-07-18T21:15:41 More skips for GLSLTest_ES31.TypesUsedInDifferentBlockStorages Also disable the test on the Linux AMD OpenGL backend. Bug: chromium:1230024 Change-Id: I9ff2d798cf7410db55802fb86635b5d833d32284 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3037628 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
angle-autoroll 32829f09 2021-07-17T19:45:34 Roll Chromium from ec932ff42c9b to ac347590d69b (492 revisions) https://chromium.googlesource.com/chromium/src.git/+log/ec932ff42c9b..ac347590d69b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC cnorthrop@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/c0b24c3c75..fd86d60f33 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/2500c1d8f3..37dc929ecb * buildtools/linux64: git_revision:24e2f7df92641de0351a96096fb2c490b2436bb8..git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b * buildtools/mac: git_revision:24e2f7df92641de0351a96096fb2c490b2436bb8..git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/486cb62885..7d5c92f6cf * buildtools/win: git_revision:24e2f7df92641de0351a96096fb2c490b2436bb8..git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/d5800742c1..36da2dc511 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/3a5a816917..9211d9e376 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..5cb305306a * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/e9e400e0af..ad8b3b0f84 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/7cf9863263..2229323ff7 * tools/luci-go: git_revision:91a04914ac71b7b6fe7b95ce8691d45eeb69bf4f..git_revision:d10ff2af1182ccaad573bc5acb84a36f4c280876 * tools/luci-go: git_revision:91a04914ac71b7b6fe7b95ce8691d45eeb69bf4f..git_revision:d10ff2af1182ccaad573bc5acb84a36f4c280876 * tools/luci-go: git_revision:91a04914ac71b7b6fe7b95ce8691d45eeb69bf4f..git_revision:d10ff2af1182ccaad573bc5acb84a36f4c280876 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/8e00ef0f0d..49df801dea No update to Clang. Bug: angleproject:6182 Tbr: cnorthrop@google.com,ynovikov@google.com Change-Id: I126380502db06c46d8e1ddada145a3f6f0c85b39 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035951 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten 9ddaa686 2021-07-16T14:57:13 Call getNearestSamples() in Framebuffer::setAttachment() The app jp.garud.ssimulator uses the same sample count of '2' for both glRenderbufferStorageMultisampleEXT() and glFramebufferTexture2DMultisampleEXT(). However, when glRenderbufferStorageMultisampleEXT() is called, Renderbuffer::setStorageMultisample() calls TextureCaps::getNearestSamples() which rounds up the sample count from '2' to '4'. Later, when the app tries to draw with the framebuffer, an error is generated by ANGLE: Framebuffer is incomplete: Attachments have different sample counts. The fix is to also call TextureCaps::getNearestSamples() in Framebuffer::setAttachment() to make sure the sample count passed into glFramebufferTexture2DMultisampleEXT() is also rounded up to match the renderbuffer. Bug: angleproject:6183 Test: MultisampledRenderToTextureTest.FramebufferCompletenessSmallSampleCount Change-Id: I58be9986077257f4767f2e528c2f87e496d9d774 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036254 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Cody Northrop ab197a2b 2021-07-16T16:08:08 Skip GLSLTest_ES31.TypesUsedInDifferentBlockStorages AMD Linux The following test is failing on AMD Linux bots: GLSLTest_ES31.TypesUsedInDifferentBlockStorages/ES3_1_OpenGL It is skipped on many platforms, so adding another. Bug: chromium:1230024 Change-Id: Ie24aa04c1b8ab4d4ecdb5c4449d320ae180ecb54 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035864 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Ian Elliott 312e91c8 2021-07-16T14:25:35 Two fixes to DevSetup.md Change master->main and eliminate a redundant/premature Linux instruction. Bug: angleproject:0 Change-Id: Ic7171f860de8acc22050a4d4858cfd318f36b9e3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035863 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 232e5236 2021-07-08T15:08:35 Remove the explicit context extension. This extension currently has no known users and doubles the number of entry points that ANGLE exports which is a significant binary size cost. This saves about 130kb of binary size on Android. Bug: chromium:1084580 Change-Id: Ib0fc4930b38a33bd61434f7d0030ba9fb9b93ba7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3015518 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi f4ce6d00 2021-07-15T11:07:25 Vulkan: SPIR-V Gen: Support bool in interface blocks SPIR-V doesn't allow bool in interface blocks. Another type specialization is added for this purpose, turning those bools to uint. Bug: angleproject:4889 Change-Id: I803bffcf5ea58c913d4df6e7aae3386c67901b25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3032021 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill 48da1c35 2021-07-16T13:24:34 Vulkan: Prefer the local vulkan loader over the system one. Load the Vulkan loader ourselves and give vkGetInstanceProcAddr to volk. This allows us to always prefer loading from the current module directory instead of using the platform-specific ordering. Refactor angle::Library loading to use ModuleDir instead of ApplicationDir. CL originally authored by Geoff Lang. Bug: chromium:1219969 Change-Id: I21d1926e90fd66e1c23cea7323991ae55f3d22d4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035444 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill dd0e8a1f 2021-07-16T10:33:57 Capture/Replay tests: Enable dcheck_always_on. This will enable release ASSERTs. ASSERTs were unintentionally disabled when switching to release builds. Bug: angleproject:5133 Change-Id: Ie19e9fd02624b10283192467c4e22e3cf2b382c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035521 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Pujun Lun 2a713d92 2021-07-15T14:58:54 Avoid recreating activity when rotating the display. Reference: https://developer.android.com/guide/topics/resources/runtime-changes#HandlingTheChange Bug: b/193828422 Change-Id: I4caa80941e4d32bdf5c830985a19536efd041069 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3032150 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jamie Madill 966c6a9a 2021-07-15T12:50:09 Capture/Replay: Don't try to serialize compressed textures. Instead we write out a simple string indicating compressed texel contents. We in the future could implement a GetCompressedTexImage API. Bug: angleproject:6176 Change-Id: I6673ec85ac94d5268b24bda4d510247a63fa97e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3032022 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill ac61386d 2021-07-15T11:08:48 Capture/Replay Tests: Swap before TearDown. Swapping before TearDown lets the capture and serialization logic see all the test resources that will be cleaned up by the fixture. This will increase coverage quite a bit because many tests do automatic cleanup which would previously skip serialization. Bug: angleproject:6175 Change-Id: I85aa3f6d9bcf2fd66836523e55862a2d5f0d8e32 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3031702 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gert Wollny 04485656 2021-07-15T13:46:54 Capture/Replay: Capture WaitSemaphore and SignalSemaphore Enable tests that now pass, but keep tests that time out or still crash on the skip list. Bug: angleproject:6164 Change-Id: I39e56f0a1bfae09c74a54b06367f7eef41d1063c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3024208 Commit-Queue: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Gert Wollny 1e75181f 2021-07-15T13:39:08 Capture/Replay: redesign capturing of arrays passed by pointer Instead of doing a lookup of the number of passes array when the call is written, store the number of array values in the ParamCapture when the call is captured. Bug: angleproject:6164 Change-Id: I87b0e2f776a6884b999cc50844e0777cda26b380 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3031543 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Gert Wollny 1d2c60da 2021-07-12T21:44:24 tests: GL_NUM_BINARY_FORMATS is a ES 3.0 property Enable according test. Bug: angleproject:6165 Change-Id: Idb0908024ebce485ac182463a02eba415f0ffec8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3024207 Commit-Queue: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
angle-autoroll ab440fe9 2021-07-16T07:00:48 Roll Chromium from 8cd71c4b8d72 to ec932ff42c9b (494 revisions) https://chromium.googlesource.com/chromium/src.git/+log/8cd71c4b8d72..ec932ff42c9b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/a0ffb5c18b..c0b24c3c75 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/bb278658aa..486cb62885 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/fc691f716e..d5800742c1 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..88e3e03477 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/9ae36fe326..c81b8b948f * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/8160e2a4da..ed1db6c6b3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f6e0d38cba..8e00ef0f0d * tools/skia_goldctl/linux: akNu1KJYVHgTQNr5JP2zeDRr55on3hTjOig4L_oTFC8C..v3HXOS7MJkC2TfycHGZS1dHlQ_BosbzqLeuDXXLbxMUC * tools/skia_goldctl/mac: tZIg-mPdIZ6uAOSczjKk5xX2bYbpRxpWf03pIR1H57UC..nx0V9Budj8K1DfPIdKA9oakeQE7SPTMIvVwqzX0DkF4C No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I6c4e73b53f31d2a956769a84e9a32136cf561906 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3033965 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gert Wollny 106ed74c 2021-07-12T20:55:33 Capture/Replay: Capture FenceNV parameters Enable according tests. Bug: angleproject:6163 Change-Id: I4435a650530006997ed3f14315461060729b836a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3024206 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Qin Jiajia 397fc145 2021-07-15T09:20:28 Fix the ext-texture-norm16 with RG16 failures Don't apply the readPixelsUsingImplementationColorReadFormatForNorm16 workaround for Intel GPU. With this workaround, below error will be printed: GL_INVALID_OPERATION in glReadPixels(invalid format GL_RG and/or type GL_UNSIGNED_SHORT) in FramebufferGL.cpp, readPixelsAllAtOnce Test: conformance2/extensions/ext-texture-norm16.html Bug: chromium:1208297 Change-Id: Ic9016c3afd8a0d2add61247adbf0d9434e8ce9f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028810 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Jonah Ryan-Davis 96aa681c 2021-07-14T17:12:18 Enable SwANGLE on ozone headless To switch ozone testing to SwANGLE we need ANGLE to be able to run vulkan/swiftshader on the ozone headless platform. Bug: chromium:1227864 Change-Id: Icb8dc8fc4b3a5bc2402be2e41334350815fdd4dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3027045 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Tom Anderson 298fafd7 2021-07-14T13:57:30 [GLX] Allow usage of multiple visuals When using AMGLE_x11_visual, a single visual is specified for the whole session. This is limiting since windows can have different visuals. For example, one window may want transparency and another window may not. This CL makes it not-an-error to use a window with a visual other than the one set with ANGLE_X11_VISUAL_ID. In this case, ANGLE will fallback to using a child window, as if ANGLE_X11_VISUAL_ID had not been specified. Long term, a better solution would be to allow specifying ANGLE_X11_VISUAL_ID per window. Bug: chromium:1225953 Change-Id: Ibec411cfd1341c30b2842a7ddba3fea6023de2b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028803 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 9c6fb52c 2021-07-13T14:10:41 Vulkan: SPIR-V Gen: Assignment between mismatching SPIR-V types In general, GLSL qualifiers translate to SPIR-V decorations on SPIR-V variables. In the case of blocks (struct or interface block), OpMemberDecorate is used, which due to its specification in SPIR-V, can only apply decorations to direct members of a block. This makes it impossible for example to decorate a nested member of a block through its variable id. As such, some decorations such as RowMajor and Invariant apply to members of a block given its _type_ id. Unfortunately SPIR-V requires ArrayStride to also be applied to a type directly, rather than a member of a block. This implies that some types, such as structs used in uniform/buffer interface block, or decorated with invariant or row_major, as well as arrays (of any type) used inside and outside interface blocks to produce different SPIR-V types from the same GLSL type. The SpirvTypeSpec data previously introduced specialize these types. It's necessary to "cast" between these types when needed. The translator handles casts at load/store boundary: - Upon load, the value is cast to the type with the default SpirvTypeSpec. - Upon store, the value is cast from the default to the store target SpirvTypeSpec. - All intermediate results use the default SpirvTypeSpec. Bug: angleproject:4889 Change-Id: I6fa28e518ec6b517ff163f44b6892859eb4b10fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3026145 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 5e579a18 2021-07-13T01:22:48 Vulkan: SPIR-V Gen: Support row-major blocks The SPIR-V type generation is refactored to contain all type-differentiating properties in a specific struct that is passed around. The following can lead to different SPIR-V types generated from the same GLSL type: - Block storage for blocks - Invariant for blocks - Row-major for blocks with matrices - Row-major for matrix arrays in blocks - Bool when used inside an interface block (not yet implemented) Previously, block storage and invariant were passed around. Instead, with this change the aggregate of all the above is passed around. The row-major specialization is added in this change. This change also refactors the uniform/buffer block encoding to use the existing encoders in blocklayout.h. Bug: angleproject:4889 Change-Id: I3cfa8bd96bb380a1f1f05fbbd6b3eebd702c9e24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3021670 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Yuly Novikov 992a2f70 2021-07-15T14:32:11 Skip DrawRepeatUnalignedVboChange on Mac ARM Metal SimpleStateChangeTest.DrawRepeatUnalignedVboChange/ES2_Metal flaky on Mac FYI arm64 Release (Apple DTK) Bug: angleproject:6171 Change-Id: I9fa8b39e172c6422d9430ab3a0aa8ce9e7558b9f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3032024 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 4b47e8f3 2021-07-14T13:29:29 GL-CTS: Add option to run on D3D11 refrast. Bug: None Change-Id: Ia28afed48b3fddcd9725094f4892a1aa27957fd4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3027540 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop f46df397 2021-07-14T19:41:03 Vulkan: Suppress VVL errors triggered by external formats Since several tests are hitting these and it may be a VVL bug, moving to ignore rather than skips. Bug: angleproject:6155 Bug: angleproject:6168 Change-Id: I38a5be8d792b8b13a490be895a68349bffe69c6e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028809 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mohan Maiya 669acb00 2021-06-08T13:36:38 Add YUV format utils and validation code 1. Add YuvFormatInfo struct and a few YUV format helpers 2. Update ES3 validation code to account for YUV formats Bug: angleproject:5773 Change-Id: I82ababe8bf2a065e7d5c4f868e4a512ba8c9d7d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2947766 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 4264138a 2021-07-15T10:01:54 Roll vulkan-deps from a03f2d365426 to 7c4121a2cfd0 (1 revision) https://chromium.googlesource.com/vulkan-deps.git/+log/a03f2d365426..7c4121a2cfd0 Changed dependencies: * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/dada63db18..8b83ca019c If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: I4a3aa5dfe053be1cc20824d07143c99fd347195c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3031221 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 4b9b435b 2021-07-15T07:00:29 Roll Chromium from 47358b0400b8 to 8cd71c4b8d72 (448 revisions) https://chromium.googlesource.com/chromium/src.git/+log/47358b0400b8..8cd71c4b8d72 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/c8b96e2021..a0ffb5c18b * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/6803464b0f..bb278658aa * testing: https://chromium.googlesource.com/chromium/src/testing/+log/70c4b1c859..fc691f716e * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/ea5c2c2838..76bd51b56b * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..f61fac0492 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/9d0a403e85..9ae36fe326 * tools/luci-go: git_revision:8b8a9a6040ca6debd30694a71a99a1eac97d72fd..git_revision:91a04914ac71b7b6fe7b95ce8691d45eeb69bf4f * tools/luci-go: git_revision:8b8a9a6040ca6debd30694a71a99a1eac97d72fd..git_revision:91a04914ac71b7b6fe7b95ce8691d45eeb69bf4f * tools/luci-go: git_revision:8b8a9a6040ca6debd30694a71a99a1eac97d72fd..git_revision:91a04914ac71b7b6fe7b95ce8691d45eeb69bf4f * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/9f08bce929..8160e2a4da * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/1f94e8277f..f6e0d38cba * tools/skia_goldctl/linux: McKpb1_oys52qBLvSwGec9-adPkk72RTCSdOBnzZiakC..akNu1KJYVHgTQNr5JP2zeDRr55on3hTjOig4L_oTFC8C * tools/skia_goldctl/mac: Ea5khSEBtnBiIUjc8YOW1PTAiFTBzcSCJcQXyS_RcV8C..tZIg-mPdIZ6uAOSczjKk5xX2bYbpRxpWf03pIR1H57UC * tools/skia_goldctl/win: hrfC-m0pHo7gMu28Bdo4wR8Fnxk_GQkMcO9LyPNPThoC..5vRobMZ1N26UvonRAdJZ66IEfzd3vF8r6z8j4Nqrhc8C No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: Iee7633c3b092fc9399383a24b5d0f812b9841e13 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028523 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten 223cd0ac 2021-06-15T18:46:07 Capture/Replay: Refactor shared context handling This is the initial CL to enable capture/replay of multi-context applications. This CL refactors FrameCapture and FrameCaptureShared to move much of the functionality into FrameCaptureShared, since most everything is shared by Contexts in the share group. For example, the setup of the majority of the GL objects is done in the new SetupReplayContextShared() function in the new $LABEL_capture_context_shared_frame001.cpp file. The setup is performed by (for example): void SetupReplay() { $LABEL::InitReplay(); $LABEL::SetupReplayContextShared(); SetupReplayContext2(); } This performs the shared setup first, followed by the context-specific setup, which may reference shared objects careated by LABEL::SetupReplayContextShared(). No re-capturing is required with this change, since the external APIs (i.e., SetupReplay()) are still the same. Bug: angleproject:5878 Test: Manual MEC and replay of Magic Tiles 3, Candy Crush Soda Saga, Temple Run 2 Change-Id: Iab7bfe651437e9be1dee83514cd97acc20c61d1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2965780 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya db54b8dd 2021-06-08T21:44:10 Add YUV format support to frontend Add GL_G8_B8R8_2PLANE_420_UNORM_ANGLE and GL_G8_B8_R8_2PLANE_420_UNORM_ANGLE formats to InternalFormatInfoMap Bug: angleproject:5773 Change-Id: Iaad4043f803c2702a5d41d3b9dc3a00c5f6aed73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2947765 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 97987658 2021-06-06T11:36:49 D3D: Update format table with new YUV formats They are currently mapped to angle::FormatID::NONE Bug: angleproject:5773 Change-Id: I0cba77158ef06bf39fbb30702e0fa91a37f660a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2947764 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 8a721740 2021-07-14T19:04:56 Roll vulkan-deps from 015a6f8b338d to a03f2d365426 (30 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/015a6f8b338d..a03f2d365426 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/9e707294f1..4b7b86d568 * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/1ae2b58f19..be3988b13c * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/ddf3230c14..1d4e3a7e3a * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/c26baf4c93..640b17b5fb * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/3bdb32d29f..99c0b1433a * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/8b86fbac17..33a87ce6da * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/f2912cd0f6..dada63db18 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: I9c7df90a144727812e03fb5417ea0df22ba34bae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3027273 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Mohan Maiya e66e3344 2021-07-12T13:28:54 Vulkan: Add GL_ANGLE_yuv_internal_format extension 1. Add a new extension to support creation of immutable textures with sized internal YUV formats 2. Rename YUV format enums from *_ANGLEX to *_ANGLE 3. Move YUV format enums from angleutils.h to glext_angle.h Bug: angleproject:5773 Change-Id: Ibfe732f4c9a4a536be56481f33e4768f6227c212 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2820153 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop cd73949c 2021-07-14T14:25:06 Skip SourceAHBTarget2DExternalCycleThroughYuvTargetsNoData P4+VK New validation layers are triggering failures. Test: SourceAHBTarget2DExternalCycleThroughYuvTargetsNoData Bug: angleproject:6168 Change-Id: I4070bd028a598e8d91a3b8f2172b42f3e782c932 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028802 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 3dda3afa 2021-07-14T16:11:01 Vulkan: SPIR-V Gen: Add missing SampleRateShading capability Bug: angleproject:4889 Bug: chromium:1229324 Change-Id: I8782ea4b0f9967c12b205a8c48d5f85bd94e950c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3027044 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 715a49c7 2021-07-03T08:48:07 Vulkan: Handle incompatible immutable sampler formats If the immutable sampler format of an active texture is not compatible with those supported by the pipeline layout, recreate the pipeline layout. Bug: b/155487768 Bug: angleproject:5033 Bug: angleproject:5773 Test: ImageTest.SourceAHBTarget2DExternalCycleThroughYuvTargetsNoData*Vulkan Change-Id: Iea78e1738ea2fb133a24dc88f5b68daf4cc1bdfe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2997289 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill ead83da9 2021-07-14T12:29:14 Add environment variable args to trigger script. This can allow specifying args such as VK_LOADER_DEBUG. Bug: chromium:1228274 Change-Id: Idf9298e32a0c6a353891eb8b929a3524d27541b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3027539 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>