- 09 Jul, 2021 4 commits
-
-
陈义松 authored
-
Nico Weber authored
The project has a strict warnings-as-errors policy. If any warnings aren't interesting, we should disable those warnings, not warnings-as-errors. Change-Id: Ib3f5d21e6f368339a6af51582facdfa7508f4239 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55609Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Nico Weber <thakis@google.com> Tested-by:
Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nico Weber authored
Change-Id: I6c0e71cc40b9b5a46d29483aea382c2589c903ea Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55668Tested-by:
Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nico Weber authored
All but the mtune flags are set by //build/config/compiler/BUILD.gn already, and mtune is set to generic. No intended behavior change. Change-Id: Ic70460a1267dd6791fb1f6e108d7432cb9048f53 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55649Tested-by:
Nico Weber <thakis@chromium.org> Reviewed-by:
Nico Weber <thakis@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Commit-Queue: Nico Weber <thakis@chromium.org>
-
- 08 Jul, 2021 8 commits
-
-
https://swiftshader-review.googlesource.com/c/SwiftShader/+/55608Nico Weber authored
Change-Id: I412ad6b4b384bef7ab43270922eed2256d4fb62b Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55648Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Nico Weber <thakis@google.com> Tested-by:
Nico Weber <thakis@google.com> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nico Weber authored
Most of these flags are already in the default //build setup in build/config/compiler/BUILD.gn, config("compiler_cpu_abi"). `-mxgot` isn't -- if that flag is needed, it should probably be in the upstream gn build files. If it's needed just for swiftshader we can add it back with a comment that says why the flag is swiftshader-specific. Change-Id: Ia1a3b9770119f575fe3fec9fc18237c89b935800 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55629Reviewed-by:Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Commit-Queue: Nico Weber <thakis@chromium.org> Tested-by:
Nico Weber <thakis@chromium.org>
-
Nico Weber authored
No behavior change. Change-Id: Ibe79440616b7d37ba621b718c448bb9c6bad9b78 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55631Tested-by:
Nico Weber <thakis@chromium.org> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nico Weber authored
The //build/config files have a whole song and dance about frame pointers in //build/config/compiler:default_stack_frames and //build/config/compiler/compiler.gni (enable_frame_pointers), so rely on that. This has the effect of enabling frame pointers in more configs, which happens to work around an lld/mac bug -- but this seems like a good change regardless. Bug: chromium:1220175 Change-Id: I59dbb80fce2c50db658c3cf0cb13690ced88cbfe Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55630Tested-by:
Nico Weber <thakis@chromium.org> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nico Weber authored
Things should build fine without this (the default min version for arm builds is macOS 11.0, and the default build already passes in a sysroot), and at least on my system swiftshader builds fine in an intel->arm cross build without this. Change-Id: Id408a935f996bdf316d90f150531a4c5855a61f3 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55628Tested-by:
Nico Weber <thakis@chromium.org> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nico Weber authored
-msse2 is passed by default in //build's gn setup (even -mssse3 now: https://chromium-review.googlesource.com/c/chromium/src/+/2311044), so there's no need to pass this explicitly. Also remove some other things that are already set elsewhere. No intended behavior change. Bug: chromium:1220175 Change-Id: Id49540d17e21362e5f57156b47cf49a5534d89af Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55610Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nico Weber authored
The GN build gets many default flags from //build/config. Remove flags that are redundant with the default flags. No intended behavior change (except for the hash style). Bug: chromium:1220175 Change-Id: Idcebc8f55165ae300632005f5cf527ec689a365f Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55608Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org>
-
Nicolas Capens authored
There are no more uses of SwiftShader's legacy OpenGL ES implementation in AOSP. Arm Fixed Virtual Platforms (FVP) was the last to switch over to using SwANGLE instead. The build targets were already disabled, so this change removes them and any exclusive dependencies, leaving only the Vulkan build. Bug: b/147516027 Change-Id: Iabde8cc18ca5cff6f4c639b4619677478f4aaede Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55588 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Jason Macnak <natsu@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 07 Jul, 2021 3 commits
-
-
Nicolas Capens authored
Subzero supported sandboxing for the PNaCl platform. Reactor does not support sandboxing at the JIT level, and we don't have a need for it since Chromium provides sandboxing as part of the "GPU process". Thus we can remove it and reduce code complexity. Note that Subzero's sandboxing implementation comes at a performance penalty. Project Bunker provides a better solution for SwiftShader, which is probably also more secure in light of speculative execution vulnerabilities. If we ever do need sandboxing support in Reactor itself (e.g. outside of SwiftShader, when process isolation is not feasible), it is best to use an actively developed JIT-compiler where security always takes priority over peformance, like Chromium's WebAssembly JIT. Bug: b/179832693 Change-Id: I7364d22183e123c5145caae9f546d3855012d73e Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55488 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Commit-Queue: Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
The SUBZERO_USE_MICROSOFT_ABI macro definition was used to indicate that we want to use the Microsoft x86-64 calling convention, instead of the System V one which PNaCl assumes (even on Windows). Using the standard _WIN64 macro instead makes us not require defining the custom one as part of our build. SUBZERO_USE_MICROSOFT_ABI was also being used to decide whether to emit stack probes. For 32-bit Windows targets, use the _WIN32 macro instead. Note that when _WIN64 is defined, _WIN32 is also defined, but to avoid confusion we use _WIN64 in the X8664 backend. Bug: b/179832693 Change-Id: Ic2e62d3dc26543876673c07b9ccc01e9d92762bf Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55528 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
PNaCl uses the ILP32 data model, even on x86-64 (cf. the x32 ABI). Reactor instead always uses LP64 on 64-bit. The main technical difference is the ILP32 on x86-64 used the address- size override prefix (0x67) for every instruction that accesses memory, which makes it look at only the lower 32-bit part of base and index registers. Note this only works in a sandbox-like environment, where memory is allocated in the lower 4 GiB range, such as PNaCl. Bug: b/179832693 Change-Id: I068ddd12b1827e3babc49a06ddf26b932d2082c5 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55468 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 06 Jul, 2021 5 commits
-
-
Sean Risser authored
With the new git-hooks submodule, all of our hooks can live in a single place. So README.md should tell users to use that location instead of using curl commands. Bug: b/187094215 Change-Id: Ibcb058e73a0ed0fec182da23345b6282eb5df6c0 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/54688 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Sean Risser <srisser@google.com> Commit-Queue: Sean Risser <srisser@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Fixes: b/192284721 Change-Id: I278ca9006f30fe87750da91bc7c87c619c537602 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55388 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Sean Risser <srisser@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Nicolas Capens authored
This change applies the same solution as applied to the X86 backends; defining the instruction opcodes as static constexpr members in the header. This was tested locally by building all the backend source files. Bug: b/192890685 Bug: chromium:604888 Change-Id: I6a70cb7cef1ad7bc56f0ea076b7ed5f4d07de5a3 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55508Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com>
-
Nicolas Capens authored
The static Opcode and Emitter members of the InstImpl<> template class have constant values, so we can make them constexpr and define them in the header. Note that we can't make them constexpr in the template class definition, since that requires in-class initialization, and GCC considers the definition of the static members of the concrete instantiations to be doing duplicate initialization (this might be a compiler bug, since Clang and MSVC allow it). Fortunately, constexpr is a specifier, which implies const, a qualifier, meaning a definition which is constexpr is compatible with a declaration which is only const. Declaring them as const in the class has the added benefit that if we instantiated the template without providing initialization of these members, we'd get a compilation error instead of using the in-class initializer of the primary template. Note also that defining these static members in the header doesn't lead to multiple definition errors because in C++17, static constexpr member variables are implicitly inline. Lastly, constexpr applied to a pointer affects the pointer value itself, not the pointee, so "constexpr const char *s" is a constexpr pointer to const characters. Thus while constexpr implies const, the second const isn't redundant because it applies to the pointee type. Bug: b/192890685 Change-Id: Ia7c6a889d08007d42393979f3b08bcfc5fa8c614 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55428 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
The static Opcode member variable of the template class which represents instructions was not a constant pointer, which allowed to accidentally change it. Bug: b/192890685 Change-Id: Ife9a172ef69c3ba831e2512d877862496eed091b Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55448 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 05 Jul, 2021 2 commits
-
-
Nicolas Capens authored
This warning, which we treat as an error, occurs when a static member of an implicitly instatiated template class is referenced, but there is no definition available in the current translation unit. Note that with a non-template class this isn't a problem, since there can only be one definition, which is expected to be resolved at link time. But with a template class each instantiation can have a different static member variable definition. This warning typically occurs when the definition is available in another translation unit, so it may be tempting to move that definition into the header file to make it available to any translation unit where the static member may be referenced. However, this typically leads to multiple-definition errors. Like all multiple-definition errors, we can address that by declaring, not defining, the variable in the header, and leaving the definition in one translation unit. In the case of a non-template class the declaration in the class definition suffices since it's fully instantiated, but for a template class we need to re-declare the static member for the explicit instantiation. Concretely, in this case Subzero has a template class for x86 instructions, with a static member for the Opcode string. This string is different for each instantiation of the instruction template, so we need to forward-declare each instantiated class's static member in the header. There's already a macro for the definitions, which is repurposed for declaring the instantiated members in the header. Note that the C++ reference states that "An explicit specialization of a static data member of a template is a definition if the declaration includes an initializer; otherwise, it is a declaration." (https://en.cppreference.com/w/cpp/language/template_specialization) But Visual Studio treats them as definitions anyway, leading to multiple-definition errors. Note that we can't add 'extern' to explicitly make it a declaration only, because storage-class specifiers are not valid for class members. So we just omit the declaration for compilers other than Clang, which don't have this warning enabled anyway. Bug: chromium:604888 Change-Id: I63b58ecdf956ff264e6d25738684b513f05b268b Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55208 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
Increasing the maxComputeWorkGroupInvocations to 256 revealed that we're consuming a lot of memory with the Subzero JIT for compute shaders that contain control barriers, due to implementing them with the use of fibers which each have a 1 MiB stack. Increasing Regres's maximum memory consumption per process keeps the tests passing while we work on a more long-term solution. Bug: b/192475710 Change-Id: I027d97d9f28d9749628fc008fe956fd436c77562 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55368 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
- 02 Jul, 2021 1 commit
-
-
James Rumble authored
Bug: b/192284721 Change-Id: I9b90cc5f77f7481c0bdcddb417679cf129ecc4c8 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55348Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Commit-Queue: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 01 Jul, 2021 2 commits
-
-
Nicolas Capens authored
The initialization of static thread-local data is not observed by MemorySanitizer when inside a shared library, leading to false-positive use-of-uninitialized-data errors: https://github.com/google/sanitizers/issues/1409 We work around this by assigning an initial value to it ourselves on first use. Note that since the flag to check whether this initialization has already been done is itself a static thread-local, we must suppress the MemorySanitizer check with a function attribute. Bug: b/191050320 Change-Id: I356a89f90ff099e08a12f5562e0545ed14d93ee3 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55328Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
Corentin Wallez authored
- maxComputeWorkGroupInvocations updated to 256. - maxComputeWorkGroupSize updated to 256, 256, 64. Bug: dawn:796 Change-Id: I00a9f4379bbc5b7c731b7c2c6f73bdc05baee3cf Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55249Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Commit-Queue: Corentin Wallez <cwallez@google.com> Tested-by:
Corentin Wallez <cwallez@google.com>
-
- 30 Jun, 2021 1 commit
-
-
Nicolas Capens authored
Android has no more known uses of SwiftShader's legacy OpenGL ES implementation. It has been replaced by SwANGLE, the combination of ANGLE and SwiftShader's Vulkan implementation. This was tested by aosp/1748769, but this change is meant to be easily reverted either upstream or downstream in case of unforeseen issues. Bug: b/147516027 Change-Id: I69cd0605443abd4ace0d08febeb7a53a3032417a Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55308Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Jason Macnak <natsu@google.com>
-
- 29 Jun, 2021 3 commits
-
-
Nicolas Capens authored
Bug: build missing Reactor/Pragma.cpp Change-Id: I585d2e335cc70636ac6f7df8e7f6e788c1325497 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55288Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Jason Macnak <natsu@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Enabling MemorySanitizer instrumentation for all Reactor routines can have too big of a performance impact. To support selective instrumentation, Pragma(MemorySanitizerInstrumentation, true) can be called to enable it for the next routine that gets created. It must be called before the Function<> constructor. Pragma state is thread local, so Pragma(MemorySanitizerInstrumentation, false) must be called after the routine has been created, to disable it again if instrumentation is not desired for subsequent routines created in this thread. Note that REACTOR_ENABLE_MEMORY_SANITIZER_INSTRUMENTATION=true enables MemorySanitizer instrumentation for Reactor routines even if the pragma state is false. Bug: b/191050320 Change-Id: Ie71aadeae140e85bda31554788288e138df0d08c Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/54988 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Corentin Wallez authored
- maxImageDimension3D updated to 2048. - maxFragmentCombinedOutputResources updated to 28. This is maxColorAttachments + maxPerStageDescriptorStorageBuffers + maxPerStageDescriptorStorageImages. 8 + 16 + 4 = 28. WebGPU doesn't have a limit for combined fragment outputs and requires at least this many. Bug: dawn:796 Change-Id: Ibda29f98d9fa6685ba8eac4b68dc03b70ae5100d Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55248 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Commit-Queue: Corentin Wallez <cwallez@google.com>
-
- 28 Jun, 2021 6 commits
-
-
Ben Clayton authored
Bug: swiftshader:161 Change-Id: Ib26cb1f6edb2549fc42420e7cc1579ce4ae36952 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55148 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Ben Clayton <bclayton@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Previously the REACTOR_ENABLE_MEMORY_SANITIZER_INSTRUMENTATION macro definition controlled whether we compiled the code for properly instrumenting Reactor routines with the MemorySanitizer LLVM pass, or compile the code to unpoison all memory writes. This change makes us compile the code for both options, and select between the two at run-time. Currently this has no net effect, but it will allow selectively enabling MSan instrumentation to be done even when REACTOR_ENABLE_MEMORY_SANITIZER_INSTRUMENTATION is not defined (or false). Thus the define now means enabling instrumentation to always be performed. This way we'll be able to gradually enable more use of MSan instrumentation, where not already enforced by the build define. The ReactorUnitTests.Uninitialized test was changed to only run on build that have REACTOR_ENABLE_MEMORY_SANITIZER_INSTRUMENTATION set, since it already assumed MSan builds to always have instrumentation enabled. Bug: b/188205704 Change-Id: I54056ddc9b1d55fabbde6ae0f02d6c8cea3afad6 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/54888 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Commit-Queue: Nicolas Capens <nicolascapens@google.com>
-
Stephan Hartmann authored
https://crbug.com/1122889 removed all defines for EGLAPI and GL_APICALL when compiled with GCC. However, that made all symbols of libEGL.so and libGLESv2.so hidden. Therefore SwiftShader can't be used with Chromium anymore. Bug: chromium:1122889 Change-Id: Ic05e7b5539537731141d945cf7944d07f4c389df Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55048 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Presubmit-Ready: Nicolas Capens <nicolascapens@google.com> Commit-Queue: Nicolas Capens <nicolascapens@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
The -warn-stack-size command line option won't be deprecated until the LLVM 13 release. This change also produces a compile-time error when LLVM 13+ is used so we won't fail to notice that the the stack size checking functionality has to be implemented using the per-function "warn-stack-size" attribute introduced by https://reviews.llvm.org/D104342. Note that development builds of LLVM use LLVM_MAJOR_VERSION=9999. Bug: b/191193823 Change-Id: I044d576a6dcd73354710783a7f7e042cb43254c5 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55188 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
If an image has a single mip level, and filtering isn't LOD dependent, as is the case when using FILTER_MIN_POINT_MAG_LINEAR or FILTER_MIN_LINEAR_MAG_POINT, LOD computation is not necessary in order to perform image sampling and can be bypassed entirely. Bug: b/179889245 Change-Id: Ic69fe0c45211ccbb66c88c502c2dba1c50630aa7 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/52688 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> Commit-Queue: Alexis Hétu <sugoi@google.com>
-
SwiftShader Regression Bot authored
Reactor backend: LLVM Change-Id: Iccd8573f30562e5aaf0f5f56a389d6c1bf5da30e Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55068 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
- 25 Jun, 2021 3 commits
-
-
Peter Kasting authored
These match changes that have been previously landed in LLVM upstream. Bug: chromium:1223264 Change-Id: Ifb104adc7d513b38ad13d96171b290ff204a7de1 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55128 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Peter Kasting <pkasting@google.com> Commit-Queue: Peter Kasting <pkasting@google.com>
-
Nicolas Capens authored
Remaining occurences of this warning have been fixed. Note the warning is also added by -Wextra so we previously explicitly disabled it with -Wno-deprecated-copy. While removing the latter should suffice to re- enable it, it's useful to make it explicit since support for implicit copy constructors when a user-defined assignment operator has been defined may be removed in the near future. Bug: b/191417833 Change-Id: If6721ae900afd530750a7d05ccc40365924d4c25 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55028 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
Reactor's Reference<> class represents a C++-like reference. It can be constructed from another reference, which creates a shallow copy, or it can be assigned another reference, which is a deep copy, but it cannot be assigned a new address. To enforce this, the address field was made constant. Also the default copy constructor outside the class definition, which is considered a user-provided copy constructor, was replaced with an in class defaulted default copy constructor. This makes it easier to understand that the copy constructor does default copying of the member fields when only looking at the class definition, takes fewer lines of code, and may enable some optimizations. Bug: b/191417833 Change-Id: Ied4ba3c7957b36efc06c19ce49f4e26309fb0c66 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55029 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 23 Jun, 2021 1 commit
-
-
Nicolas Capens authored
The Vulkan 1.2.182 spec mandates that "The UpdateAfterBind descriptor limits must each be greater than or equal to the corresponding non-UpdateAfterBind limit." Note that at the moment we do not advertise any of the update after bind features (e.g. descriptorBindingSampledImageUpdateAfterBind), but the Vulkan Validation Layers still expect these limits to be non-0. A descriptor pool creation flag and a descriptor binding flag which are disallowed when the features are not enabled prevent actual update after bind usage. Bug: swiftshader:160 Change-Id: Icce2ba987cb67a87544a406df144dfce8026b3f6 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55108Tested-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 21 Jun, 2021 1 commit
-
-
SwiftShader Regression Bot authored
Reactor backend: Subzero Change-Id: I7da14621e8aaf5e6730e2a2b884ad09984310e25 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/54828 Kokoro-Result: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-