- 21 Nov, 2018 2 commits
-
-
Alexis Hetu authored
Surface::bytes() now supports all non-extension vulkan image formats. Compressed formats are partially supported, the same way they were for the OpenGL ES 3.0 implementation. Bug b/118429780 Change-Id: Ica7f7d7184e9e00eeedfc76bc6b5c19e07aa3caf Reviewed-on: https://swiftshader-review.googlesource.com/c/22568Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
To avoid format conversion issues and simplify the code, sw::Format was replaced with VkFormat. sw::Format only contained formats with exact 1:1 correspondence with an equivalent VkFormat, with the exception of YUV formats, which will require a minor adjustment in SamplerCore::sampleTexel(). Bug b/119620767 Change-Id: I8124cbc40e1031a5b233156a10e87c35f1334eef Reviewed-on: https://swiftshader-review.googlesource.com/c/22549Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 16 Nov, 2018 6 commits
-
-
Alexis Hetu authored
Basic shell class for RenderPass Bug b/119620965 Change-Id: Ice98943587f363f8cf03eddd3cc4c504b899d682 Reviewed-on: https://swiftshader-review.googlesource.com/c/22612Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
Basic shell class for Framebuffer Bug b/119621736 Change-Id: Iaf5466d311efe011ea7bbd4a6e3ab2802474f98e Reviewed-on: https://swiftshader-review.googlesource.com/c/22611Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
Basic shell class for Image Bug b/119620767 Change-Id: I75d37dd8c1a9b98264fe6dae68cd4753d6942103 Reviewed-on: https://swiftshader-review.googlesource.com/c/22610Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
Basic shell class for ShaderModule Bug b/118386749 Change-Id: Ia41957ba1ef3be179d20c37cea0227a9a4509c7b Reviewed-on: https://swiftshader-review.googlesource.com/c/22609Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
Basic shell classes for Pipeline, PipelineLayout b/118386749 Change-Id: I1ec82d1bf2334d5e2cd338d96eff63f3714db198 Reviewed-on: https://swiftshader-review.googlesource.com/c/21888Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Stephen Hines authored
This library depends on a snapshot of LLVM that only works with C++11. Bug: http://b/111067277 Test: Build with default cpp_std as C++17. Change-Id: I40de7e2357afa3c16ceac7f50241a6d0437aba09 Reviewed-on: https://swiftshader-review.googlesource.com/c/22628Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Stephen Hines <srhines@google.com>
-
- 15 Nov, 2018 1 commit
-
-
Alexis Hetu authored
Moved MacOS specific frameworks from swiftshader_libGLESv2 to swiftshader_libGLESv2_static to make sure the static version also links properly. Bug chromium:905648 Change-Id: I7736009abc378d634313028eb51aa0bb221c6419 Reviewed-on: https://swiftshader-review.googlesource.com/c/22608Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 14 Nov, 2018 8 commits
-
-
Alexis Hetu authored
glDeleteQueries() instantly deletes all the es2::Query objects passed as arguments to this function. If some of these queries are still being used by the renderer, this will result in a use after free error. To solve this issue, sw::Query is now a also ref counted object. Bug chromium:904714 Change-Id: Ic1d5781bbf1724d8d07936fd49c8a172dc3d9fd4 Reviewed-on: https://swiftshader-review.googlesource.com/c/22548Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
VkPhysicalDeviceFeatures only contains VkBool32 members, and is also described by the spec as a "structure that contains boolean indicators of all the features to be enabled", as well as "For each feature, a value of VK_TRUE specifies that the feature is supported on this physical device, and VK_FALSE specifies that the feature is not supported". Hence we can safely process it as an array of VkBool32. This is also more likely to return false early when a requested feature is not supported. Bug b/117974925 Change-Id: I106ba6abf5f29874cde91fdaafd1dd9560aabfa9 Reviewed-on: https://swiftshader-review.googlesource.com/c/22512Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
When an unsupported structure type was encountered this would lead to an infinite loop. Bug b/117974925 Change-Id: I0ba68e80a162ee631ae122b765cf8ea1149b3a3b Reviewed-on: https://swiftshader-review.googlesource.com/c/22510Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Bug b/117974925 Change-Id: I9c4553a1586e4f9e4a193b24f6c1b07749a7702a Reviewed-on: https://swiftshader-review.googlesource.com/c/22509Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Generic system memory is cached on all known ARMv8 and x86 CPUs, so advertise it as such. Bug b/118383648 Change-Id: Ic757206a497fc299e1e76a939220092f7c0a124d Reviewed-on: https://swiftshader-review.googlesource.com/c/22448Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Also always clear the UUIDs first so that shorter strings don't leave data undefined. Bug b/116336664 Change-Id: I77d5ae1514db5d68d540614b7c57c4872695ecca Reviewed-on: https://swiftshader-review.googlesource.com/c/22490Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
This enables running the unit tests without manually querying each entry function. The compiler generates a .lib file for us which load the .dll file and retrieves the entry functions. Also fix project dependencies and DLL path. Bug b/116336664 Change-Id: I4cbd80bd071a20058b034db8fb12e31f9af2e081 Reviewed-on: https://swiftshader-review.googlesource.com/c/22489Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
The popup dialog for waiting for the debugger was missing a resource, causing DllMain to fail and thus failure to load the DLL. Bug b/116336664 Change-Id: Ic12af87f3eb272a1f1ba27917926dcd845d86977 Reviewed-on: https://swiftshader-review.googlesource.com/c/22528Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 13 Nov, 2018 3 commits
-
-
Alexis Hetu authored
Changed limits for lineWidth and pointSize so that they're unsupported. This fixes all remaining failures in dEQP-VK.api.info.device b/117974925 Change-Id: I228dcb5305f2bfe5bb053aa968cebcbb7afaee98 Reviewed-on: https://swiftshader-review.googlesource.com/c/22511Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
For some reason, the Vulkan Loader prevents any dialog window from popping up, which means that loading the SwiftShader Vulkan DLL in Debug was always failing, unless a debugger was already attached (as is the case when running from within Visual Studio). The debugger wait dialog can still be easily enabled locally by setting the DEBUGGER_WAIT_DIALOG environment variable. Bug b/116336664 Change-Id: I7ce596c753506c806bf6b159685a72d0372f949a Reviewed-on: https://swiftshader-review.googlesource.com/c/22488Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Gordana Cmiljanovic authored
This fixes Chromium (mips64el) cross-comile failure for v8 snapshot for host. Bug: b/115344057, b/117854176 Change-Id: I0a348701151b9db288a3de84ef22c23bbd007a80 Reviewed-on: https://swiftshader-review.googlesource.com/c/22408Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Milko Leporis <milko.leporis@mips.com>
-
- 12 Nov, 2018 1 commit
-
-
Alexis Hetu authored
A hang in Chromium on MacOS seems related to attempting to load libGLES_CM repeatedly, since it doesn't exist. While dlopen() probably shouldn't be this slow, it could also be related to a sandboxing issue. In any case, this cl attempts to go around the issue by never trying to load a library twice. Bug chromium:904346 Change-Id: I65122f0fc9acb4f8db2a606437c61796464f72ad Reviewed-on: https://swiftshader-review.googlesource.com/c/22468Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 09 Nov, 2018 1 commit
-
-
Alexis Hetu authored
Some classes were given the following attribute: [[clang::lto_visibility_public]] This produces a warning in Visual Studio. This was meant to allow these base classes to be visible to both libEGL and libGLESv2. Vulkan will be a single DLL, so this won't be an issue, so I simply removed both instances of this attribute in the Vulkan project. Change-Id: I6d1b0bb0ab5351d6b788917c0b876e9355505404 Reviewed-on: https://swiftshader-review.googlesource.com/c/22428Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 08 Nov, 2018 1 commit
-
-
Alexis Hetu authored
4 basic things here: - Set SwiftShader formats to match the equivalent Vulkan format, when available - Removed SwiftShader formats with no exact match in Vulkan formats - Added all currently unavailable Vulkan formats in comments in the list, possibly to be added later, when necessary - Marked all mandatory sampled formats in the list (in comments) Bug b/118429780 Change-Id: I7d7b661e64cb4aee9eb724c64664cee8271cc48c Reviewed-on: https://swiftshader-review.googlesource.com/c/21808Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 07 Nov, 2018 1 commit
-
-
Nicolas Capens authored
-W[error=]unused-lambda-capture is not recognized by GCC. Change-Id: I6d1bfc470c4afc0e72b76d2a26efb85eb8d8c8fb Reviewed-on: https://swiftshader-review.googlesource.com/c/22368Reviewed-by:
Takuto Ikuta <tikuta@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Takuto Ikuta <tikuta@google.com>
-
- 06 Nov, 2018 3 commits
-
-
Nicolas Capens authored
Deterministic loops use the first scalar of the SIMD register used as the loop index, for addressing arrays. This means that operations on the index register should not be masked (i.e. it should be treated as a scalar). Previously we were still masking it based on conditional statements, and we didn't disable the masking altogether for the loop initialization and initial test. A new shader assembly instruction 'SCALAR' was added for doing this. Previously this was conflated with the 'TEST' instruction, which should independently disable/restore the 'continue' mask. Bug swiftshader:93 Bug b/118009174 Change-Id: I4add1a6d74231f463217e57adfabdc81faf489ae Reviewed-on: https://swiftshader-review.googlesource.com/c/22348Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Vulkan doesn't require any fixed-function vertex and pixel processing. Bug b/117152542 Change-Id: I4c758c70ff97a785c263c38497e7fb435b81b05d Reviewed-on: https://swiftshader-review.googlesource.com/c/22148Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Bug b/117152542 Change-Id: I341f03ad3fcc8d52723ec9575685eeb28519e7dc Reviewed-on: https://swiftshader-review.googlesource.com/c/22328Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 05 Nov, 2018 2 commits
-
-
Takuto Ikuta authored
This is re-land of https://swiftshader-review.googlesource.com/c/SwiftShader/+/21848 bug: chromium:681136 Change-Id: I11ca3b0f3ccd00ff93cf5eec0e342b49d2ce1f99 Reviewed-on: https://swiftshader-review.googlesource.com/c/22289Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Takuto Ikuta <tikuta@google.com>
-
Gordana Cmiljanovic authored
* LLVM reactor backend: requires LLVM 7.0 * Subzero reactor backend: not supported Bug: b/117854176 Change-Id: I7b76ebf854f65c2d111552552bd5a81c049d3b50 Reviewed-on: https://swiftshader-review.googlesource.com/c/22308Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Gordana Cmiljanovic <gordana.cmiljanovic@mips.com>
-
- 03 Nov, 2018 2 commits
-
-
Takuto Ikuta authored
This reverts commit d0d9928f. Reason for revert: This broke build, NumElements needs to be captured in debug build Change-Id: If5d8579a48229af9ff5a75dc7baeb544b195b746 Reviewed-on: https://swiftshader-review.googlesource.com/c/22288Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Takuto Ikuta <tikuta@google.com>
-
Takuto Ikuta authored
We can use const local variables without capturing. bug: chromium:681136 Change-Id: I2df60e02920841222b6e63aaa2be3ecbb8d6db2c Reviewed-on: https://swiftshader-review.googlesource.com/c/21848Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Takuto Ikuta <tikuta@google.com>
-
- 02 Nov, 2018 3 commits
-
-
Nicolas Capens authored
Reactor is a run-time code generator so it only needs to support the CPU architecture for which it is being compiled. This reduces (static) compile time and potentially the binary size. Bug b/115344057 Change-Id: I925875e33e3c24dfc41abc1c055353a4099be618 Reviewed-on: https://swiftshader-review.googlesource.com/c/22208Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
The test expression of a loop is placed between the TEST and ENDWHILE shader assembly instructions, and should no longer be affected by the cleared execution mask of a continue statement. Thus TEST should always be emitted, even for non-deterministic loops. Other masks should still apply, and work recursively, so the 'whileTest' boolean to disable all masks during the test expression evaluation has been replaced with a stack to restore the continue mask at the TEST instruction. Bug swiftshader:93 Bug b/118009174 Change-Id: I505c48f0344e61a6c31f81d26e93bc1217a105a2 Reviewed-on: https://swiftshader-review.googlesource.com/c/22248Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
These were moved to the Chromium repo in https://chromium-review.googlesource.com/1311084 Change-Id: I1a0379cf5d28379fbde3d629b6beeaa9ac339841 Reviewed-on: https://swiftshader-review.googlesource.com/c/22209Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 01 Nov, 2018 2 commits
-
-
Nicolas Capens authored
Change-Id: I8f4dc30c4bace3c2a95c72b3fdd8b4eb200c80cd Reviewed-on: https://swiftshader-review.googlesource.com/c/22249Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
It's not available on older versions of macOS. Bug b/115344057 Change-Id: I220a26812e5d1bc1fd0bacae490a7bdbc6a7e6df Reviewed-on: https://swiftshader-review.googlesource.com/c/22228Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 31 Oct, 2018 4 commits
-
-
Nicolas Capens authored
The Mach-O executable format, used on macOS/Darwin, stores function names in mangled form, so we need to mangle it ourselves during function pointer lookup. Bug b/115344057 Change-Id: I8de5756c52b5af666826134fca8274b4467fa85a Reviewed-on: https://swiftshader-review.googlesource.com/c/22188Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Reactor is a run-time code generator so it only needs to support the CPU architecture for which it is being compiled. This reduces (static) compile time and potentially the binary size. Bug b/115344057 Change-Id: Id25dd986a888af5175d43c33e4c60bb3e4733eda Reviewed-on: https://swiftshader-review.googlesource.com/c/22128Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
Bug b/115344057 Change-Id: I755f06f125fe0b7f170a0ec325f7e112b8cc789c Reviewed-on: https://swiftshader-review.googlesource.com/c/22108Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Gordana Cmiljanovic authored
This enables LLVM reactor backend to be used for mipsel in Chromium, though Subzero remains the default option. Bug: b/117854176 Change-Id: I8c66017cd3a966202b61f8cbd65e065e3512e1e5 Reviewed-on: https://swiftshader-review.googlesource.com/c/22008Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Gordana Cmiljanovic <gordana.cmiljanovic@mips.com>
-