- 11 Aug, 2020 2 commits
-
-
Nicolas Capens authored
This extension allows the viewport's minimum and maximum depth to be outside of the 0.0 to 1.0 range: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VK_EXT_depth_range_unrestricted.html Note that while most extensions don't change the behavior of the logical device whether they're enabled or not (since they just allow new calls, enums, or values which are otherwise undefined behavior and implementing the functionality of the extension is valid as "undefined" behavior), enabling/disabling this extension does cause an observable difference. Bug: b/163135814 Tests: dEQP-VK.*depth_range_unrestricted* Change-Id: I418a2e7226140719af08601d8919f4cdbc7a237c Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47608 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Alexis Hetu authored
This cl adds a verification before using the imageView stored within descriptor sets to make sure they still exist. These imageView objects are used to make sure images which require preprocessing (cubemaps and compressed images) are up to date. The device contains the list of active ImageView objects. Bug: b/163523811 Bug: b/152227757 Bug: chromium:1110549 Change-Id: I2e2190f2e61296ef3a2e4b699bda885d3a6595d9 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47588Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
- 07 Aug, 2020 1 commit
-
-
SwiftShader Regression Bot authored
Reactor backend: LLVM Change-Id: I2bd569ebb5f74fd708e5d0f9598be1f6d445b863 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47468Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 06 Aug, 2020 6 commits
-
-
Nicolas Capens authored
Bug: b/162315264 Change-Id: I92cca44ad78aea9fcdcb8e0bc0f3c2c1ff28f19f Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47508 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
1D images were being treated as 2D ones with the second coordinate set to 0.0. It required other workarounds like moving the array layer coordinate and providing an addressing mode for the second coordinate. These have been removed, and the texel address calculation now ignores the second coordinate for 1D images. Note this doesn't specialize filtering for the 1D case yet, so the weights for filtering in the v-direction are explicitly zeroed out. Fixes: b/162858741 Bug: b/134669567 Change-Id: I4684ee0337ac500860e9939087045a953bad813a Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47428 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Nicolas Capens authored
Instead of reusing the 2D mipmap LOD calculation, this change adds a separate method for computing the LOD for 1D sampling operations. This also revealed that we would perform the anisotropic filtering calculations on 1D sampling operations if enabled, which makes no sense. This change limits it to 2D sampling only. Bug: b/134669567 Change-Id: I05dd3fe358eccfcd01ebcff35872f56c6f0b0b70 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47488 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Nicolas Capens authored
The array layer coordinate isn't subject to addressing modes like the other coordinates. There's just one selection computation: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#textures-unnormalized-to-integer This change eliminates the internally used ADDRESSING_LAYER mode, and avoids using the 'w' coordinate as the array layer coordinate for 2D array images (instead exclusively using it for 3D images). Also, the cube face index is combined with the array layer in case of cube array images. The division by 6 was eliminated by adjusting the descriptor 'depth' field instead. Bug: b/162315264 Change-Id: I4a541697ea265b3ad5b7d7c3a2420c045f46cbbe Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47388 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Nicolas Capens authored
- Sort the coordinates and operands in the same order as for the SPIR-V instructions. - Renamed 'q' to 'dRef'. - Used integer type for offset operands. - Renamed 'addressingModeY' to 'addressingModeA'. Note this is only used by cube array coordinates. 2D array coordinates use 'addressingModeW' at the moment. - Removed array layer coordinate parameter from 3D sampling. - Added 'dRef' operand for 3D sampling. Bug: b/162315264 Change-Id: Ia24aa22a57ba5507aa4c8cf617f49f18ccca59c5 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47097 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
This ensures that if the sample or layer coordinate were not forced to be in range but the 'valid' mask indicates whether they're in range, we sample texel 0 instead of potentially outside the image memory. Note this does not yet validate the sample coordinate. Bug: b/162419571 Change-Id: I08561862cbf371c1109c8949cd90557110d4ee24 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47228 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
- 04 Aug, 2020 3 commits
-
-
SwiftShader Regression Bot authored
Reactor backend: Subzero Change-Id: Ib5c1f626806c22e49be4e3cfb3286d87ad4bc749 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47448Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Sean Risser <srisser@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Dirk Pranke authored
I stumbled across this while bringing up the Chromium build under Python3. The change should allow the code to work under both 2 and 3 now. Bug: chromium:1112479 Change-Id: I5ae0cafdd453a12b53a0fa5392ad46cba60f4ed4 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47308Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
This extension was never actually implemented. While it has been promoted to 'core' in Vulkan 1.1, the storageBuffer16BitAccess feature bit indicates whether or not the implementation supports the functionality. Bug: b/162742397 Test: dEQP-VK.info.device_mandatory_features Change-Id: I3e2871ce09975db3da2ad1f042d6955dbd565479 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47408 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Sean Risser <srisser@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 03 Aug, 2020 1 commit
-
-
Nicolas Capens authored
Bug: docs update Change-Id: I0e0a596456d4c534adb6a8f57455d3cfb9cb65b9 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47289 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Sean Risser <srisser@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 02 Aug, 2020 1 commit
-
-
SwiftShader Regression Bot authored
Reactor backend: Subzero Change-Id: I25a37b74498d3a287ed8d78c6a16ca08c3973688 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47328Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
- 30 Jul, 2020 3 commits
-
-
SwiftShader Regression Bot authored
Reactor backend: Subzero Change-Id: I5d78eb4b823a056a07be57932c51391661d4f845 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47268Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
third_party/subzero is a fork which we are responsible for. Many of the non-PC words were in files we actually have no use for, so they've been removed altogether. Bug: b/162338339 Bug: chromium:1097202 Change-Id: Iaa531dd8788efaf25a640786b78d15d4648b2dd9 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47208Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Sean Risser authored
Swiftshader already counts all the fragments for this feature, it just needed to be enabled in VkPhysicalDevice.cpp. The occlusion_query tests that remain unsupported require VK_EXT_host_query_reset. This is unsupported in SwiftShader as of now, though it is required for Vulkan 1.2 conformance. Bug: b/148241855 Tests: dEQP-VK.query_pool.occlusion_query.* Change-Id: Ib03df4225ed49865c648368ebf0547bfc3d117f7 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47148Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Sean Risser <srisser@google.com>
-
- 29 Jul, 2020 4 commits
-
-
Antonio Maiorano authored
Change-Id: If82af55254be64d6dbe1f9d758f7e2d440b9577a Bug: b/152028822 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47248Tested-by:
Antonio Maiorano <amaiorano@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Antonio Maiorano authored
Change-Id: Iaeb2d94609f8ef6d6c66f537aa3273a59d1610b4 Bug: b/152028822 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47229Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Antonio Maiorano <amaiorano@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
SwiftShader Regression Bot authored
Reactor backend: Subzero Change-Id: I887f6f46e4330ddf0ad317cdb3aad4cdeed9918f Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47028Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Alexis Hetu authored
Added a mask to prevent writing to unused outputs Bug: b/162348737 Change-Id: I72b86cf2f6d0f9f07992cc63bc55fe9e45822e1d Tests: dEQP-VK.draw.output_location.array.* Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47168 Presubmit-Ready: Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
- 28 Jul, 2020 5 commits
-
-
Nicolas Capens authored
The feature is currently always enabled, so we ignore the creation flag for now. Bug: b/159329067 Tests: dEQP-VK.robustness.image_robustness.* Change-Id: I5385196afd93e3deeaec5713f301af4fed4ef15e Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/46828 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
VK_EXT_image_robustness requires returning zero on out-of-bounds image accesses. OpImageFetch was previously merely clamping the coordinates to be in-bounds. This change reuses some of the functionality for VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER to perform texel replacement. Bug: b/159329067 Tests: dEQP-VK.robustness.image_robustness.* Change-Id: I8c00b8de2793b0b7028230cb180d308a4b9b60ec Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47095 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
VK_EXT_image_robustness requires loads and stores using a pointer produced by OpImageTexelPointer to be bounds checked. Out-of-bounds reads must result in [0,0,0,0] or [0,0,0,1] values. We always return all-zero. Out-of-bounds writes must be ignored. This also includes the read-modify-write operations performed by atomic instructions. Bug: b/159329067 Tests: dEQP-VK.robustness.image_robustness.* Change-Id: I4f5c2e8ae0bc89e61207fd1f7f1c449a35ca621e Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47069 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Antonio Maiorano authored
This change adds CMake targets that setup and build ANGLE by invoking gclient and gn. The 'angle-setup' target should run only once (if the .gclient file does not exist), and the 'angle' target will build if any source file under angle/src is modfied. The 'angle' target builds libEGL and libGLESv2 into ${CMAKE_BINARY_DIR}/bin-angle. Furthermore, if building PowerVR examples are enabled (SWIFTSHADER_BUILD_PVR), the PVR output folder, ${CMAKE_BINARY_DIR}/bin, gets copied to ${CMAKE_BINARY_DIR}/bin-angle first. Finally, a script named 'export-swangle-env.bat/sh' also gets copied to ${CMAKE_BINARY_DIR}/bin-angle, which sets environment variables so that the PowerVR examples will run on "SWANGLE" (that is, on ANGLE on SwiftShaderVK). Example on Linux: cd SwiftShader/build cmake -DSWIFTSHADER_BUILD_PVR=1 -DSWIFTSHADER_BUILD_ANGLE=1 .. cmake --build . --target angle source bin-angle/export-swangle-env.sh ./bin-angle/OpenGLESBumpmap On Windows, run bin-angle\export-swangle-env.bat, and execute the examples from the bin-angle directory. Bug: b/152028822 Change-Id: Idd06fb1b6f14b47740692352d353f3a0c9588a90 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47109Tested-by:Antonio Maiorano <amaiorano@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Antonio Maiorano authored
Bug: b/152028822 Change-Id: I13499a0b13f074d876f6038ab776d5de6e27cd3a Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47108Tested-by:
Antonio Maiorano <amaiorano@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 27 Jul, 2020 8 commits
-
-
Alexis Hetu authored
Bug: b/123642959 Change-Id: I9ee44d6f3ae332f50110a4108481103dca998c77 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/47098 Presubmit-Ready: Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hétu authored
* changes: Update SPIR-V Headers to 979924c8b Squashed 'third_party/SPIRV-Headers/' changes from f8bf11a02..979924c8b
-
Alexis Hétu authored
* changes: Update SPIR-V Tools to 8a5500656 Squashed 'third_party/SPIRV-Tools/' changes from 55af3902f..8a5500656
-
Nicolas Caramelli authored
Bug: b/161736397 Change-Id: Ia795a1dcf201cc33027f520c0af8d5839d873af9 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/46768Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Caramelli <caramelli.devel@gmail.com>
-
Alexis Hetu authored
Changes: 979924c8b Support SPV_KHR_terminate_invocation (#163) 7f2ae1193 Merge pull request #162 from vkushwaha-nv/SPV_EXT_shader_atomic_float 7083cb52e Add changes for SPV_EXT_shader_atomic_float 308bd0742 Merge pull request #160 from dj2/reg_tint 5ce353315 Register the Tint compiler 11d7637e7 Merge pull request #159 from dneto0/fix-quotes 291d7bf7a spir-v.xml: Use plain ASCII quotes in comment ed09fc149 Merge pull request #158 from mkinsner/mkinsner/fpfastmath_allocation_mechanism f2d2ca132 Rebuild headers against the previous grammar commit. 9e2b21a74 Merge pull request #150 from MrSidims/private/MrSidims/UpstreamIntelExt 7d343e9c0 Apply suggestions dfa87b6d4 Add Intel specific definitions from KhronosGroup/SPIRV-LLVM-Translator ae6e15156 Header build from previous grammar update. 8012d1c86 Merge pull request #152 from MrSidims/private/MrSidims/FunctionPointers 982a08f59 Propose bit allocation mechanism for the FP Fast Math Mode bitfield, following from the mechanism previously added for the loop control bitfield. ac638f181 Merge pull request #157 from dneto0/update-example 1fa1a92e0 Update example to use unified1 headers c0df742ec Update headers to SPIR-V 1.5 Revision 3 375789625 Add a bunch of missing "version" : "None" for ray tracing. 6300597a6 Rebuild the headers with the fixed grammar file. c26f7e838 Add missing "version" : "None" for ShaderCallKHR 445017dc7 Grammar: The ray-tracing updates were not done in numerical ordering. 2ad0492fb Discuss generator magic number reservations. 9995e294c Add SPV_INTEL_function_pointers preview extension Commands: ./third_party/update-spirvheaders.sh Bug: b/123642959 Change-Id: Icf7b69da64e742a2e43fa6d7d9c42addf0d5aee2 -
Alexis Hetu authored
979924c8b Support SPV_KHR_terminate_invocation (#163) 7f2ae1193 Merge pull request #162 from vkushwaha-nv/SPV_EXT_shader_atomic_float 7083cb52e Add changes for SPV_EXT_shader_atomic_float 308bd0742 Merge pull request #160 from dj2/reg_tint 5ce353315 Register the Tint compiler 11d7637e7 Merge pull request #159 from dneto0/fix-quotes 291d7bf7a spir-v.xml: Use plain ASCII quotes in comment ed09fc149 Merge pull request #158 from mkinsner/mkinsner/fpfastmath_allocation_mechanism f2d2ca132 Rebuild headers against the previous grammar commit. 9e2b21a74 Merge pull request #150 from MrSidims/private/MrSidims/UpstreamIntelExt 7d343e9c0 Apply suggestions dfa87b6d4 Add Intel specific definitions from KhronosGroup/SPIRV-LLVM-Translator ae6e15156 Header build from previous grammar update. 8012d1c86 Merge pull request #152 from MrSidims/private/MrSidims/FunctionPointers 982a08f59 Propose bit allocation mechanism for the FP Fast Math Mode bitfield, following from the mechanism previously added for the loop control bitfield. ac638f181 Merge pull request #157 from dneto0/update-example 1fa1a92e0 Update example to use unified1 headers c0df742ec Update headers to SPIR-V 1.5 Revision 3 375789625 Add a bunch of missing "version" : "None" for ray tracing. 6300597a6 Rebuild the headers with the fixed grammar file. c26f7e838 Add missing "version" : "None" for ShaderCallKHR 445017dc7 Grammar: The ray-tracing updates were not done in numerical ordering. 2ad0492fb Discuss generator magic number reservations. 9995e294c Add SPV_INTEL_function_pointers preview extension git-subtree-dir: third_party/SPIRV-Headers git-subtree-split: 979924c8bc839e4cb1b69d03d48398551f369ce7
-
Alexis Hetu authored
Changes: 8a5500656 spirv-fuzz: adds TransformationReplaceLoadStoreWithCopyMemory (#3586) 7c901a49c Preserve OpenCL.DebugInfo.100 through private-to-local pass (#3571) 767518e8e spirv-fuzz: Relax type checking for int contants (#3573) f8920bcfa spirv-fuzz: Generalise transformation access chain (#3546) 98ac9fd6d spirv-fuzz: Split blocks starting with OpPhi before trying to outline (#3581) 059ab0819 spirv-fuzz: Set message consumer in replayer when shrinking (#3591) d6306537d spirv-fuzz: Don't use default parameters (#3583) 969f02864 Change DEPS rolling script to point at external/ (#3584) 1aaf5c613 spirv-fuzz: Create a helper in fuzzerutil to reuse function type (#3572) 89b3bc5a8 spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 9dc1bfa31 spirv-fuzz: adds TransformationReplaceCopyMemoryWithLoadStore (#3575) 586a12b9d spirv-fuzz: adds TransformationReplaceCopyObjectWithStoreLoad (#3567) 0b84727f2 Start SPIRV-Tools v2020.5 895927bd3 Finalize SPIRV-Tools v2020.4 bc2f78b7d spirv-fuzz: Fix usages of irrelevant constants (#3566) a0d8dc2b4 Update CHANGES f3cec9366 Support SPV_KHR_terminate_invocation (#3568) dca2c86bc Sink pointer instructions in merge return (#3569) cf7e922e7 Preserve OpenCL.DebugInfo.100 through elim-dead-code-aggressive (#3542) fe9e5db89 spirv-fuzz: TransformationReplaceParamsWithStruct (#3455) e4aebf99f Add changes for SPV_EXT_shader_atomic_float (#3562) 5dc96d5d2 spirv-fuzz: Use irrelevant constants (#3565) 98395b834 spirv-fuzz: Extend TransformationRecordSynonymousConstants to allow composite constants (#3537) a3b0adc30 spirv-fuzz: Add is_irrelevant parameter (#3563) 8b5ed4448 spirv-fuzz: Add IdIsIrrelevant fact (#3561) c10d6cebb spirv-fuzz: refactor to use RemoveAtRandomIndex (#3560) 0d8fe0fba spirv-fuzz: add TransformationAddRelaxedDecoration (#3545) 717e7877c Store location values sparsely (#3488) d5766f280 Permit Simple and GLSL450 memory model in WEBGPU_0 (#3463) bcc78b3e9 spirv-fuzz: support floating-point in TransformationInvertComparisonOperator (#3551) fb32c4074 Change MaybeApplyTransformation to return a boolean (#3555) 7dfd9b868 spirv-fuzz: Implement MaybeApplyTransformation helper function (#3540) de1ff50f2 spirv-fuzz: Assert false in IsApplicable method of TransformationAccessChain (#3528) 680c77fa6 spirv-fuzz: Add support for OpBitcast to TransformationEquationInstruction (#3523) b0206b0f6 spirv-fuzz: Add support for OpConvert to TransformationEquationInstruction (#3472) 7221ccf85 Fix reachability in the validator (#3541) 2fa735dc0 spirv-fuzz: Remove TransformationCopyObject (#3531) 8e0215afe spirv-opt: Add support for OpLabel to dominator analysis (#3516) f12c40f5a spirv-fuzz: Fuzzer pass to interchange zero-like constants (#3524) 3e7238c68 spirv-fuzz: Add replay range option (#3535) 4c33fb0d3 Rewrite KillDebugDeclares() (#3513) 362276978 spirv-fuzz: Fix instruction insertion issue (#3521) 91d921e89 spirv-fuzz: Implement the OpMatrixTimesMatrix linear algebra case (#3527) 282392dda Add support to GPU-AV instrumentation for Task and Mesh shaders (#3512) c9b254d04 spirv-fuzz: Support adding dead break from back-edge block (#3519) fe4dca516 Support OpPhi when replacing boolean constant operand (#3518) 40c3c1cac spirv-fuzz: TransformationAddSynonyms (#3447) 13dc28ce7 spirv-fuzz: Remove unused functions (#3510) 282962362 spirv-fuzz: Minor refactoring (#3507) cf8c86a2d Preserve OpenCL.DebugInfo.100 through elim-local-single-store (#3498) a687057a8 Preserve debug info in vector DCE pass (#3497) 5f8cdd8b4 Implement transformation to record synonymous constants. (#3494) 94667fbf6 Fix build failure (#3508) 44428352b Upgrade elim-local-single-block for OpenCL.DebugInfo.100 (#3451) de56c34bd spirv-fuzz: TransformationReplaceParameterWithGlobal (#3434) 11946e640 Implement the OpMatrixTimesVector linear algebra case (#3500) f8eddbbe5 Preserve OpenCL.100.DebugInfo in reduce-load-size pass (#3492) daa3b47ed spirv-fuzz: Add image sample unused components transformation (#3439) 7afbc0c8b spirv-fuzz: Add variables with workgroup storage class (#3485) 2fbeb04b6 spirv-fuzz: Implement the OpVectorTimesMatrix linear algebra case (#3489) 6d61c1159 spirv-fuzz: fuzzerutil::MaybeGetConstant* #3487 6a4da9da4 Debug info preservation in copy-prop-array pass (#3444) bd2a9ea85 spirv-fuzz: TransformationInvertComparisonOperator (#3475) 2c1ff230c Fix regression (#3481) 4a92579a4 spirv-fuzz: Add fuzzerutil::FindOrCreate* (#3479) fba90d6b0 spirv-fuzz: Add FuzzerPassAddCopyMemoryInstructions (#3391) ab10489a0 spirv-fuzz: Add one parameter at a time (#3469) fc0dc3a9c Fix ADCE pass bug for mulitple entries (#3470) 91c50e3fc Add gl_BaseInstance to the name mapper. (#3462) c3680adbd Implement the OpMatrixTimesScalar linear algebra case (#3450) efaae24d0 Clear debug information for kill and replacement (#3459) a1fb255a2 Validate location assignments (#3308) 7a1af5878 Support OpCompositeExtract pattern in desc_sroa (#3456) 29ba53f2a spirv-fuzz: Implement FuzzerPassAddParameters (#3399) 71a5b6770 spirv-fuzz: Add GetParameters (#3454) 8e586e46a spirv-fuzz: Permute OpPhi instruction operands (#3421) 36b5bb701 Add support for different default/trunks in roll-deps (#3442) d4b9f576e [spirv-opt] debug info preservation in ssa-rewrite (#3356) 2a1b8c062 Updated desc_sroa to support flattening structures (#3448) 33cf7c425 spirv-fuzz: Refactor variable creation (#3414) d5306c8e8 spirv-fuzz: Swap operands in OpBranchConditional (#3423) 545d158a2 Use structured order to unroll loops. (#3443) 5342930f9 Debug info preservation in dead branch elimination (#3425) 99651228b Add RemoveParameter method (#3437) 57d9e360c Fix return type (#3435) a7112d544 Eliminate branches with condition of OpConstantNull (#3438) 949470354 spirv-fuzz: Implement vector shuffle fuzzer pass (#3412) 12a4fb3bc spirv-fuzz: Add replace linear algebra instruction transformation (#3402) 52a5f074e Update access control lists. (#3433) 30bf46dbe Fix operand access (#3427) 5543d5faa Debug info preservation in ccp pass (#3420) 458140aed Fix round trip tests that weren't instantiated (#3417) e49896709 spirv-fuzz: Add a test (#3238) c01f826bc spirv-fuzz: Add support for OpSpecConstant* (#3373) 7c213720b spirv-fuzz: Fix replayer bug (#3401) 9ed0fef6e Add value instruction condition (#3385) ffaecad32 Fix instruction function use (#3390) 94808bd0f spirv-fuzz: Fix regression (#3396) 74130f2d3 Fix googletest inclusion (#3398) 636f449e1 Add tests for merge-return debug info preservation (#3389) f050cca7e spirv-fuzz: Add push id through variable transformation (#3359) 8dfdbeff8 Rolling 4 dependencies (#3380) 20e7fc505 Start SPIRV-Tools v2020.4 e128ab0d6 Finalize SPIRV-Tools v2020.3 9b8a6a144 Update CHANGES d3d89bb90 spirv-fuzz: Support bit width argument for int and float types (#3378) Commands: ./third_party/update-spirvtools.sh Bug: b/123642959 Change-Id: Id54668de78b22bf61434d050162e06de30366d52 -
Alexis Hetu authored
8a5500656 spirv-fuzz: adds TransformationReplaceLoadStoreWithCopyMemory (#3586) 7c901a49c Preserve OpenCL.DebugInfo.100 through private-to-local pass (#3571) 767518e8e spirv-fuzz: Relax type checking for int contants (#3573) f8920bcfa spirv-fuzz: Generalise transformation access chain (#3546) 98ac9fd6d spirv-fuzz: Split blocks starting with OpPhi before trying to outline (#3581) 059ab0819 spirv-fuzz: Set message consumer in replayer when shrinking (#3591) d6306537d spirv-fuzz: Don't use default parameters (#3583) 969f02864 Change DEPS rolling script to point at external/ (#3584) 1aaf5c613 spirv-fuzz: Create a helper in fuzzerutil to reuse function type (#3572) 89b3bc5a8 spirv-fuzz: Test usages of IdIsIrrelevant fact (#3578) 9dc1bfa31 spirv-fuzz: adds TransformationReplaceCopyMemoryWithLoadStore (#3575) 586a12b9d spirv-fuzz: adds TransformationReplaceCopyObjectWithStoreLoad (#3567) 0b84727f2 Start SPIRV-Tools v2020.5 895927bd3 Finalize SPIRV-Tools v2020.4 bc2f78b7d spirv-fuzz: Fix usages of irrelevant constants (#3566) a0d8dc2b4 Update CHANGES f3cec9366 Support SPV_KHR_terminate_invocation (#3568) dca2c86bc Sink pointer instructions in merge return (#3569) cf7e922e7 Preserve OpenCL.DebugInfo.100 through elim-dead-code-aggressive (#3542) fe9e5db89 spirv-fuzz: TransformationReplaceParamsWithStruct (#3455) e4aebf99f Add changes for SPV_EXT_shader_atomic_float (#3562) 5dc96d5d2 spirv-fuzz: Use irrelevant constants (#3565) 98395b834 spirv-fuzz: Extend TransformationRecordSynonymousConstants to allow composite constants (#3537) a3b0adc30 spirv-fuzz: Add is_irrelevant parameter (#3563) 8b5ed4448 spirv-fuzz: Add IdIsIrrelevant fact (#3561) c10d6cebb spirv-fuzz: refactor to use RemoveAtRandomIndex (#3560) 0d8fe0fba spirv-fuzz: add TransformationAddRelaxedDecoration (#3545) 717e7877c Store location values sparsely (#3488) d5766f280 Permit Simple and GLSL450 memory model in WEBGPU_0 (#3463) bcc78b3e9 spirv-fuzz: support floating-point in TransformationInvertComparisonOperator (#3551) fb32c4074 Change MaybeApplyTransformation to return a boolean (#3555) 7dfd9b868 spirv-fuzz: Implement MaybeApplyTransformation helper function (#3540) de1ff50f2 spirv-fuzz: Assert false in IsApplicable method of TransformationAccessChain (#3528) 680c77fa6 spirv-fuzz: Add support for OpBitcast to TransformationEquationInstruction (#3523) b0206b0f6 spirv-fuzz: Add support for OpConvert to TransformationEquationInstruction (#3472) 7221ccf85 Fix reachability in the validator (#3541) 2fa735dc0 spirv-fuzz: Remove TransformationCopyObject (#3531) 8e0215afe spirv-opt: Add support for OpLabel to dominator analysis (#3516) f12c40f5a spirv-fuzz: Fuzzer pass to interchange zero-like constants (#3524) 3e7238c68 spirv-fuzz: Add replay range option (#3535) 4c33fb0d3 Rewrite KillDebugDeclares() (#3513) 362276978 spirv-fuzz: Fix instruction insertion issue (#3521) 91d921e89 spirv-fuzz: Implement the OpMatrixTimesMatrix linear algebra case (#3527) 282392dda Add support to GPU-AV instrumentation for Task and Mesh shaders (#3512) c9b254d04 spirv-fuzz: Support adding dead break from back-edge block (#3519) fe4dca516 Support OpPhi when replacing boolean constant operand (#3518) 40c3c1cac spirv-fuzz: TransformationAddSynonyms (#3447) 13dc28ce7 spirv-fuzz: Remove unused functions (#3510) 282962362 spirv-fuzz: Minor refactoring (#3507) cf8c86a2d Preserve OpenCL.DebugInfo.100 through elim-local-single-store (#3498) a687057a8 Preserve debug info in vector DCE pass (#3497) 5f8cdd8b4 Implement transformation to record synonymous constants. (#3494) 94667fbf6 Fix build failure (#3508) 44428352b Upgrade elim-local-single-block for OpenCL.DebugInfo.100 (#3451) de56c34bd spirv-fuzz: TransformationReplaceParameterWithGlobal (#3434) 11946e640 Implement the OpMatrixTimesVector linear algebra case (#3500) f8eddbbe5 Preserve OpenCL.100.DebugInfo in reduce-load-size pass (#3492) daa3b47ed spirv-fuzz: Add image sample unused components transformation (#3439) 7afbc0c8b spirv-fuzz: Add variables with workgroup storage class (#3485) 2fbeb04b6 spirv-fuzz: Implement the OpVectorTimesMatrix linear algebra case (#3489) 6d61c1159 spirv-fuzz: fuzzerutil::MaybeGetConstant* #3487 6a4da9da4 Debug info preservation in copy-prop-array pass (#3444) bd2a9ea85 spirv-fuzz: TransformationInvertComparisonOperator (#3475) 2c1ff230c Fix regression (#3481) 4a92579a4 spirv-fuzz: Add fuzzerutil::FindOrCreate* (#3479) fba90d6b0 spirv-fuzz: Add FuzzerPassAddCopyMemoryInstructions (#3391) ab10489a0 spirv-fuzz: Add one parameter at a time (#3469) fc0dc3a9c Fix ADCE pass bug for mulitple entries (#3470) 91c50e3fc Add gl_BaseInstance to the name mapper. (#3462) c3680adbd Implement the OpMatrixTimesScalar linear algebra case (#3450) efaae24d0 Clear debug information for kill and replacement (#3459) a1fb255a2 Validate location assignments (#3308) 7a1af5878 Support OpCompositeExtract pattern in desc_sroa (#3456) 29ba53f2a spirv-fuzz: Implement FuzzerPassAddParameters (#3399) 71a5b6770 spirv-fuzz: Add GetParameters (#3454) 8e586e46a spirv-fuzz: Permute OpPhi instruction operands (#3421) 36b5bb701 Add support for different default/trunks in roll-deps (#3442) d4b9f576e [spirv-opt] debug info preservation in ssa-rewrite (#3356) 2a1b8c062 Updated desc_sroa to support flattening structures (#3448) 33cf7c425 spirv-fuzz: Refactor variable creation (#3414) d5306c8e8 spirv-fuzz: Swap operands in OpBranchConditional (#3423) 545d158a2 Use structured order to unroll loops. (#3443) 5342930f9 Debug info preservation in dead branch elimination (#3425) 99651228b Add RemoveParameter method (#3437) 57d9e360c Fix return type (#3435) a7112d544 Eliminate branches with condition of OpConstantNull (#3438) 949470354 spirv-fuzz: Implement vector shuffle fuzzer pass (#3412) 12a4fb3bc spirv-fuzz: Add replace linear algebra instruction transformation (#3402) 52a5f074e Update access control lists. (#3433) 30bf46dbe Fix operand access (#3427) 5543d5faa Debug info preservation in ccp pass (#3420) 458140aed Fix round trip tests that weren't instantiated (#3417) e49896709 spirv-fuzz: Add a test (#3238) c01f826bc spirv-fuzz: Add support for OpSpecConstant* (#3373) 7c213720b spirv-fuzz: Fix replayer bug (#3401) 9ed0fef6e Add value instruction condition (#3385) ffaecad32 Fix instruction function use (#3390) 94808bd0f spirv-fuzz: Fix regression (#3396) 74130f2d3 Fix googletest inclusion (#3398) 636f449e1 Add tests for merge-return debug info preservation (#3389) f050cca7e spirv-fuzz: Add push id through variable transformation (#3359) 8dfdbeff8 Rolling 4 dependencies (#3380) 20e7fc505 Start SPIRV-Tools v2020.4 e128ab0d6 Finalize SPIRV-Tools v2020.3 9b8a6a144 Update CHANGES d3d89bb90 spirv-fuzz: Support bit width argument for int and float types (#3378) git-subtree-dir: third_party/SPIRV-Tools git-subtree-split: 8a5500656ec0b495bb9d4f23257c3d21123225a9
-
- 26 Jul, 2020 2 commits
-
-
Nicolas Capens authored
Includes VK_EXT_image_robustness definitions. https://github.com/KhronosGroup/Vulkan-Headers revision 83825d55c7d522931124696ecb07ed48f2693e5c tag v1.2.148 Bug: b/159329067 Change-Id: Ic993487408dd9e80b04acd415bb4487c3f1fac57 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/46788 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
While LLVM 8 provides CreateBinaryIntrinsic() and CreateUnaryIntrinsic() as part of the IRBuilder<> API, they implicity append the operand type to the intrinsic name. This only works for 'abstract' intrinsics such as 'sqrt'. For intrinsics corresponding to specific native instructions, it causing symbol resolution to fail. This change adds createInstruction() functions to simplify the creation of these native intrinsics. Also remove some macros which were needed for compatibility with LLVM 7. Bug: b/152339534 Change-Id: Id985941d9725c8746df05c58520810feb73bfe19 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/37088 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Antonio Maiorano <amaiorano@google.com>
-
- 24 Jul, 2020 1 commit
-
-
Antonio Maiorano authored
We no longer build or support LLVM < 10. Bug: b/152339534 Change-Id: I2481a3ad824e559e8f62c56f3c15d7b6fc0f83e8 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/46729Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Antonio Maiorano <amaiorano@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
- 23 Jul, 2020 3 commits
-
-
Alexis Hetu authored
This first implementation ignores all optional functionality, so this is a very bare-bones implementation of VK_EXT_debug_utils. Bug: b/119321052 Change-Id: I8ef189b957b6d1b433846de945b7852c3d6e8190 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/46968 Presubmit-Ready: Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Sean Risser authored
Enabled depthBiasClamp in SwiftShader's PhysicalDeviceFeatures, which will also enable any dEQP tests that rely on it. Bug: b/160463658 Tests: dEQP-VK.dynamic_state.rs_state.depth_bias_clamp Change-Id: Ida3ae12d30fb70a3bd7e508e276fb9a1bfc96231 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/46848 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Sean Risser <srisser@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Michael Spang authored
The VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO extension structure is safe to ignore for Linux and Fuchsia. We already ignored it for private allocations (see vkAllocateMemory). Some drivers can do a better job of allocating if they know that a VkDeviceMemory will contain exactly one object with known properties. This is the case for NVIDIA, but not SwiftShader. For external memory, on some platforms (including Android) the shareable object isn't just a flat blob of memory, it carries format/dimensions etc. The AHardwareBufferExternalMemory implementation in VkDeviceMemoryExternalAndroid.hpp obtains the image/buffer from the VkMemoryDedicatedAllocateInfo structure to pass it to gralloc. External memory on Linux and Fuchsia are just flat memory allocations, so on these platforms we can ignore the dedicated allocation info. Bug: b/156200449 Change-Id: Ia7838bb8a39aac2a1908f314d146ad11f1be79d2 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/45048 Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Antonio Maiorano <amaiorano@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-