- 14 Feb, 2019 1 commit
-
-
Hernan Liatis authored
Bug: b/124265819 Change-Id: I4a1d32e38219171c7b9094335af9a6deef7f8dd8 Reviewed-on: https://swiftshader-review.googlesource.com/c/24568Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by:
Hernan Liatis <hliatis@google.com>
-
- 13 Feb, 2019 1 commit
-
-
Nicolas Capens authored
vulkan_core.h only includes 'core' Vulkan declarations, while vulkan.h consists of vulkan_core.h plus platform-specific headers. Only Window System Integration (WSI) and closely related source files should have a need to include vulkan.h. Everything else, in particular our back-end, should not require anything Vulkan platform-specific. This avoids issues such as Xlib defining global macros which clash with C++ type and variable names. Bug b/124265819 Change-Id: I6c250f27aef39b98a2a8b677c169df060698f104 Reviewed-on: https://swiftshader-review.googlesource.com/c/24709Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 12 Feb, 2019 2 commits
-
-
Nicolas Capens authored
SPIRV-Tools include directory was missing, and all projects should link using the static runtime library. Bug b/123642959 Change-Id: I8ab915270115c810a91ff013d56a5bbb0a01d4a1 Reviewed-on: https://swiftshader-review.googlesource.com/c/24708Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
The root cause of a shader call stack overflow was fixed in https://swiftshader-review.googlesource.com/c/SwiftShader/+/24628 All shaders should now be validated not to exceed our call stack size before reaching this lowering stage of compilation. Thus the run-time checks can be removed. This partially reverts https://swiftshader-review.googlesource.com/c/SwiftShader/+/23568 Bug b/123587120 Change-Id: I04fc2613da7526992dd52c323deca8d9ad2c30c0 Reviewed-on: https://swiftshader-review.googlesource.com/c/24648 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 11 Feb, 2019 6 commits
-
-
Nicolas Capens authored
https://swiftshader-review.googlesource.com/c/SwiftShader/+/16328 increased the maximum call depth validated by the GLSL ES compiler, without increasing the stack size supported by our back-end. The sw::MAX_SHADER_CALL_STACK_SIZE of the back-end is now statically passed to an es2::MAX_SHADER_CALL_STACK_SIZE (has to remain equal or smaller) and then passed to the GLSL compiler's resources limits. Bug b/123587120 Change-Id: I9a56d5b4e980dc0881c238669d2b786bb3c855e3 Reviewed-on: https://swiftshader-review.googlesource.com/c/24628Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Run some optimization passes before lowering the code, to allow for a simpler compiler. Current passes: - Exhaustively inline functions - Apply and freeze specialization constants I expect this set of passes will change somewhat as the compiler evolves. We may want to stop inlining at some point. Bug: b/124058197 Bug: b/124056625 Change-Id: Ib2a3dc2d2599449d45ac7ebb1de107deba8eb2c3 Reviewed-on: https://swiftshader-review.googlesource.com/c/24288Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Also deletes tons of fixed-function-centric stuff that will never be used by the Vulkan backend. Very little of the SPIRV integration actually does anything interesting yet (we don't generate code) but this wires on the new shader representation. Bug: b/120799499 Change-Id: Ib76e2086113098aebd526a0da461689d4344e8c2 Reviewed-on: https://swiftshader-review.googlesource.com/c/23090Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Change-Id: I4750715a635ca3f929ae8d282c6cbaedfd4186f3 Reviewed-on: https://swiftshader-review.googlesource.com/c/23490Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Ben Clayton authored
Bug b/116336664 Change-Id: I1df29a8ef6b2700089ee5cc104b28ed898ccec1b Reviewed-on: https://swiftshader-review.googlesource.com/c/24470Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Ben Clayton authored
• Update to the latest config version • Change the build folder to "${workspaceRoot}/build" • Add option to control cmake build type • Add new task to push current branch to gerrit Change-Id: I0465bec244ebc06fd7f0f460f5673ed666077a1d Reviewed-on: https://swiftshader-review.googlesource.com/c/24468 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:Nicolas Capens <nicolascapens@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
- 08 Feb, 2019 2 commits
-
-
Cody Schuffelen authored
This fixes an issue where es2::Context::drawElements would still try to read draw data even when there are 0 elements to draw, causing a buffer overflow on draw data. This was found by running Android ES3 dEQP under ASAN. The failing tests are EQP-GLES3.functional.primitive_restart.[begin_restart, begin_restart_duplicate_restarts, begin_restart_end_restart, begin_restart_end_restart_duplicate_restarts, end_restart_duplicate_restarts, duplicate_restarts].* The crashing dEQP tests cover glDrawElementsInstanced, glDrawRangeElements, and glDrawElements. These all converge onto es2::Context::drawElements. Bug: b/123716871 Change-Id: I4bca0616eb9f92bf18a3331459f3dcd06b8ac9a9 Signed-off-by:
Cody Schuffelen <schuffelen@google.com> Test: cts-tradefed run commandAndExit cts -m CtsDeqpTestCases --module-arg 'CtsDeqpTestCases:include-filter:dEQP-GLES3.functional.primitive_restart.*' Reviewed-on: https://swiftshader-review.googlesource.com/c/24548 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
Implemented vkCmdUpdateBuffer and vkCmdFillBuffer. Passes all tests in: dEQP-VK.api.fill_and_update_buffer.* Bug b/118619338 b/118383648 Change-Id: I3cf317b4cb766618a54b2550019ac2702c24bfed Reviewed-on: https://swiftshader-review.googlesource.com/c/24529Tested-by:
Alexis Hétu <sugoi@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 06 Feb, 2019 5 commits
-
-
Alexis Hetu authored
This cl is a minimal implementation of DescriptorPool and DescriptorSetLayout. A DescriptorSet itself is just a straight memory pointer. A DescriptorPool is a memory pool where DescriptorSets are allocated. The DescriptorPool object itself is little more than a memory allocator. A few minor optimizations were made to speed up the default case: - The Descriptor pool starts looking for a large enough memory block at the end of the pool, which should be optimal if the DescriptorSets are allocated linearly - When allocating multiple DescriptorSets at once, the pool first attempts to allocated all of them contiguously. This prevents looking for free memory blocks multiple times and once again should be optimal if the DescriptorSets are allocated linearly Note: For now, DescriptorSetLayout::GetDescriptorSize() is a dummy function which always returns the same size for every Descriptor type. This will be implemented properly case by case as we add support for new Descriptor types. Passes all tests in: dEQP-VK.api.*descriptor* Bug b/123244275 Change-Id: I2a2e73396e38dae28b59b77243cd8a366b35c12c Reviewed-on: https://swiftshader-review.googlesource.com/c/24028Tested-by:Alexis Hétu <sugoi@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Nicolas Capens authored
Bug b/123642959 Change-Id: I8edc9ac199b2d212b9e563dcc31f9f46757ed596 Reviewed-on: https://swiftshader-review.googlesource.com/c/24351Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Nicolas Capens authored
SPIRV-Tools comes with CMake build files. Integrating it into our custom Visual Studio solution requires making the project files that it generates path independent so that they can be checked into the repository. This is achieved by the build/cmake.sh shell script that is intended to be run from the Git Bash shell. It needs to be re-run when any CMakeLists.txt file changes. .gitignore was modified to allow for build files under the build/ directory to be checked in. CMakeFiles/ and CMakeCache.txt are ignored because they contain absolute paths and aren't necessary for building. Bug b/123642959 Change-Id: I0706e3302d16144ecb9c0802cec897aa66affe6f Reviewed-on: https://swiftshader-review.googlesource.com/c/24349Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Nicolas Capens authored
Use the SPIRV-Headers files from the subtree copy in third_party, instead of the ones in include/spirv. Bug b/123642959 Change-Id: I79f77d2f659d5623583b2de40536dec0c79e2f7f Reviewed-on: https://swiftshader-review.googlesource.com/c/24348Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Nicolas Capens authored
Clang doesn't support the unused-lambda-capture warning until version 5.0: http://releases.llvm.org/5.0.0/tools/clang/docs/DiagnosticsReference.html#wunused-lambda-capture Bug b/123933266 Change-Id: I6c5681a64e08ab479d726679ec18447dec926630 Reviewed-on: https://swiftshader-review.googlesource.com/c/24448Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
- 05 Feb, 2019 4 commits
-
-
Ben Clayton authored
clang: warning: argument unused during compilation: '-s' [-Wunused-command-line-argument] Bug: b/123933266 Change-Id: I809458fa08b9b6b3af7d31c19a90206462d0b0c6 Reviewed-on: https://swiftshader-review.googlesource.com/c/24429 Kokoro-Presubmit: Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
Bug: b/123894424 Change-Id: I9d3d24241d929cb80f9f28062537b50093009530 Reviewed-on: https://swiftshader-review.googlesource.com/c/24408 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Maksim Sisov authored
There is no sense in passing -Wno-error=header-hygiene if -Wno-header-hygiene is not passed (gcc case). Thus, use -Wno-error=header-hygiene only with clang. Bug: chromium:819294 Change-Id: I01bd9771352ab2e8827f1fdd493eb89bb719dd0f Reviewed-on: https://swiftshader-review.googlesource.com/c/24428 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Ben Clayton authored
Seen building on Ubuntu 18.04.1: ``` libllvm.a(DynamicLibrary.cpp.o): In function `llvm::sys::DynamicLibrary::HandleSet::~HandleSet()': DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSetD2Ev+0x1c): undefined reference to `dlclose' DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSetD2Ev+0x2c): undefined reference to `dlclose' libllvm.a(DynamicLibrary.cpp.o): In function `llvm::sys::DynamicLibrary::HandleSet::DLSym(void*, char const*)': DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet5DLSymEPvPKc+0x1): undefined reference to `dlsym' ``` Also removes --no-as-needed hack. Bug: b/123360006 Change-Id: Icef1078e68cbf68af991e52f7fbb6e8d449e0809 Reviewed-on: https://swiftshader-review.googlesource.com/c/24310Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
- 04 Feb, 2019 4 commits
-
-
Chris Forbes authored
We have two kinds of "variable" -- those that are directly backed by an lvalue, and those that are subsets of an indexed location, etc space. Split them so we don't have to rediscover it later at emit time. Bug: b/120799499 Change-Id: I7403f76d615d7afa1ee50c014172f07b90262c40 Reviewed-on: https://swiftshader-review.googlesource.com/c/24374Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Buffer usage was ignored in memory requirements. Usage support was added for the purpose of computing the proper required alignment. Fixes: dEQP-VK.memory.requirements.core.buffer.regular Bug b/118383648 Change-Id: Ib66e8d85f1b468765e24edba598fa06f4b5888c9 Reviewed-on: https://swiftshader-review.googlesource.com/c/23928 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
OpVariable handling needs to be split out; variables are clearly not present in the type tree. Take care to apply the OpVariable's decorations in the right place. Bug: b/123779863 Change-Id: I2761a604683cf8b025f6b9ba1efa5383f53d7ed1 Reviewed-on: https://swiftshader-review.googlesource.com/c/24372Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Alexis Hetu authored
This implementation of vkCmdSetEvent and vkCmdResetEvent assumes: - There's only one queue (which currently is the case) - Everything in the queue is executed linearly (which is currently the case) - VkPipelineStageFlags can be ignored for now Taking VkPipelineStageFlags into account could be used to avoid unnecessary stalls or cache flushing. This will come at the optimization phase after full conformance is achieved. Bug b/117835459 Change-Id: Icb08a8b8e3fe63e827c9ba994a5e4353603e4ac9 Reviewed-on: https://swiftshader-review.googlesource.com/c/24371Tested-by:
Alexis Hétu <sugoi@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 01 Feb, 2019 2 commits
-
-
Alexis Hetu authored
Implemented vkResetCommandPool and vkTrimCommandPool. The reset command out all command buffers in the command pool back to the initial state. It also frees up the entire pool. The trim command is a potential future memory usage optimization. It is currently a noop. Passes a few tests in dEQP-VK.api.command_buffers. Bug b/119827933 Change-Id: Ic974f63a8dfca014462ac904218b9dcc3035fc8a Reviewed-on: https://swiftshader-review.googlesource.com/c/24370Tested-by:
Alexis Hétu <sugoi@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Raymond Chiu authored
BUG b/123360006 Change-Id: Ib986b6409d7ac1d2ced6ea3b9995b026f960fa3e Reviewed-on: https://swiftshader-review.googlesource.com/c/24289Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 31 Jan, 2019 3 commits
-
-
Chris Forbes authored
Bug: b/73656151 Change-Id: I93a4ad7c28f2177224ba3b3ae39c9eaba6c72f39 Reviewed-on: https://swiftshader-review.googlesource.com/c/23690Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
This cl properly parses VkDeviceGroupDeviceCreateInfo, but only allows the already supported default case. Fixes all tests in: dEQP-VK.api.object_management.*.device_group Bug b/117974925 Change-Id: I42851f10bb9fc94848414bbd09b65ab8b807ae0e Reviewed-on: https://swiftshader-review.googlesource.com/c/23968Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Raymond Chiu authored
Older version of gcc mistakenly missed out on linking libdl without it. Change-Id: I5c12972c140348fa504e4ff4acb81655b445b4a5 Reviewed-on: https://swiftshader-review.googlesource.com/c/24268Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
- 30 Jan, 2019 9 commits
-
-
Matthew Dempsky authored
Currently VMOs on Fuchsia are allocated with execute rights, but soon that will not be the case, so the calls later to re-map memory as executable will fail. Add zx_vmo_replace_as_executable call to ensure they don't. Change-Id: I45c5f5527bc36ed898b29095788006239bb2b0b3 Reviewed-on: https://swiftshader-review.googlesource.com/c/24188Reviewed-by:
Wez <wez@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Matthew Dempsky <mdempsky@google.com>
-
Chris Forbes authored
Adds commit 'd14db341b834cfb3c574a258c331b3a6b1c2cbc5' from https://github.com/KhronosGroup/SPIRV-Tools as 'third_party/SPIRV-Tools' Commands: git subtree add --prefix third_party/SPIRV-Tools https://github.com/KhronosGroup/SPIRV-Tools d14db341b834cfb3c574a258c331b3a6b1c2cbc5 --squash Bug: b/123642959 Change-Id: I9de28ed72f80a4ed6280ac1b990a57eed92b9667
-
Chris Forbes authored
git-subtree-dir: third_party/SPIRV-Tools git-subtree-split: d14db341b834cfb3c574a258c331b3a6b1c2cbc5
-
Chris Forbes authored
Adds commit '79b6681aadcb53c27d1052e5f8a0e82a981dbf2f' from https://github.com/KhronosGroup/SPIRV-Headers as 'third_party/SPIRV-Headers' Commands: git subtree add --prefix third_party/SPIRV-Headers https://github.com/KhronosGroup/SPIRV-Headers 79b6681aadcb53c27d1052e5f8a0e82a981dbf2f --squash Bug: b/123642959 Change-Id: I39d6f1aff817ec9ed527c01eb631c99d81a17a95
-
Chris Forbes authored
git-subtree-dir: third_party/SPIRV-Headers git-subtree-split: 79b6681aadcb53c27d1052e5f8a0e82a981dbf2f
-
Alexis Hetu authored
Added the implementation for vkDeviceWaitIdle, which calls into a noop vkQueueWaitIdle for now, until we have a non noop implementation of Fence objects. This allows many tests to run properly. Bug b/117835459 Change-Id: I39be52f9462d87591bbb0bccee1e9e41b5a744b9 Reviewed-on: https://swiftshader-review.googlesource.com/c/24048Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
LLVM was updated to the latest 7.0.1 revision, which includes the proper fix. Reverts "Fixed build on Arm 64" This reverts commit fed67899. Bug b/123026156 Bug chromium:922089 Change-Id: I1f6ee4d3869e642e6ce2bd8cbf2c8f7553e4a607 Reviewed-on: https://swiftshader-review.googlesource.com/c/24150Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
* changes: Update to latest LLVM 7.0 release branch revision. Squashed 'third_party/llvm-7.0/llvm/' changes from 65ce2e56889..cd98f42d074
-
Alexis Hetu authored
The simple Draw command now supports all of the input parameters. Bug b/118619338 Change-Id: I51c3680dcc6497296e00000ad3e80f302629af3c Reviewed-on: https://swiftshader-review.googlesource.com/c/24049Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 29 Jan, 2019 1 commit
-
-
Alexis Hetu authored
Since PipelineCache is a potential optimization, unmarking it as UNIMPLEMENTED() and leaving a TODO instead. This can be addressed much later, but for now, this shouldn't make tests fail. Bug b/118386749 b/123588002 Change-Id: I5bdc15aedd9a01e35a457eef1a70c450083fd577 Reviewed-on: https://swiftshader-review.googlesource.com/c/23969Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-