- 16 Jan, 2019 1 commit
-
-
Alexis Hetu authored
A few warnings were causing build errors on Arm 64. Since we don't want to modify the LLVM code itself, the warnings in the LLVM code are now suppressed. Bug chromium:922089 Change-Id: I7e8827cda5117e8817342930dca8d7b7f90d339c Reviewed-on: https://swiftshader-review.googlesource.com/c/23628Tested-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
- 14 Jan, 2019 1 commit
-
-
Chris Forbes authored
Change-Id: Idb38063e6d8f7c6345118b2acddba4dcb99d0831 Reviewed-on: https://swiftshader-review.googlesource.com/c/23588Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 11 Jan, 2019 1 commit
-
-
Chris Forbes authored
Change-Id: I065e79f9ea676eaec25e89063908cae6f3854e4c Reviewed-on: https://swiftshader-review.googlesource.com/c/23489Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 07 Jan, 2019 3 commits
-
-
Sergey Ulanov authored
Added fuchsia-specific versions of allocateExecutable() and markExecutable(). Bug: chromium: 778467 Change-Id: I027f1409f7b0343e102f98fcc34f2e93c2d626e4 Reviewed-on: https://swiftshader-review.googlesource.com/c/23408Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Sergey Ulanov <sergeyu@chromium.org>
-
Tom Tan authored
llvm::parseIR in llvm-7.0\llvm\lib\IRReader\IRReader.cpp calls parseAssembly which is defined in lib/AsmParser/Parser.cpp, but the latter file is not included in swiftshader_llvm which causes unresovled symbol for linking. This CL added the necessary source files under llvm\AsmParser to swiftshader_llvm. This CL also changed __rdtsc() to use Windows ARM64 intrinsic _ReadStatusReg to get cycle counter as alternative of __rdtsc(). Bug: chromium:893460 Change-Id: I269662f2e4249a3ec5495ecad02bc759139e1d4f Reviewed-on: https://swiftshader-review.googlesource.com/c/23508Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Tom Tan <Tom.Tan@microsoft.com>
-
Nico Weber authored
The .def file is already in sources, which means GN will already add this flag automatically (cf `gn help sources`). No intended behavior change. Bug: none Change-Id: Ic8204bbdd9da47f3731d48e62ccfeb880ac9eddc Reviewed-on: https://swiftshader-review.googlesource.com/c/23528Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Nico Weber <thakis@chromium.org>
-
- 24 Dec, 2018 1 commit
-
-
Milko Leporis authored
Change-Id: I37dfecd8c92f3f34c117432956d169f4b191c849 Reviewed-on: https://swiftshader-review.googlesource.com/c/23248Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Milko Leporis <milko.leporis@mips.com>
-
- 21 Dec, 2018 9 commits
-
-
Alexis Hetu authored
Blitting from a higher bit depth source to a lower bit depth destination was not working properly because Vulkan expects clamping, while the blitter was truncating the values. From section 19.5. Image Copies with Scaling: "Signed and unsigned integers are converted by first clamping to the representable range of the destination format, then casting the value." This fixes all remaining failures in: dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color.* Bug b/119620767 Change-Id: Ibd1c1e4be4f5107e7d423781b46021f4c5df1070 Reviewed-on: https://swiftshader-review.googlesource.com/c/23368Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Added support for reading the following formats in the Blitter: - VK_FORMAT_B10G11R11_UFLOAT_PACK32 - VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 Fixes all failures in: [dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color] .b10g11r11_ufloat_pack32.* .e5b9g9r9_ufloat_pack32.* Bug b/119620767 Change-Id: Ie5824b59b0193115cc7d142efc41cc3ac516c05c Reviewed-on: https://swiftshader-review.googlesource.com/c/23348Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Implemented Float <-> Half conversion. The conversion is copied from Half.cpp and is the same as the C++ code, converted to Reactor code. The conversion is NOT optimized. Optimizing this code path will be done later, this cl only cares about correctness. Passes all conversion tests to and from half float in the following patterns: [dEQP-VK.api.copy_and_blit.core.blit_image] .all_formats.color.[supported format].r16_sfloat.* .all_formats.color.[supported format].r16g16_sfloat.* .all_formats.color.[supported format].r16g16b16a16_sfloat.* .all_formats.color.r16_sfloat.* .all_formats.color.r16g16_sfloat.* .all_formats.color.r16g16b16a16_sfloat.* Bug b/119620767 Change-Id: Icd725dcd2ddd8c54e6657a2c3210da270210a149 Reviewed-on: https://swiftshader-review.googlesource.com/c/23329Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Added support for VK_FORMAT_A1R5G5B5_UNORM_PACK16 in the Blitter. Passes all tests in: [dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color] .b4g4r4a4_unorm_pack16.a1r5g5b5_unorm_pack16.* .r8g8_snorm.a1r5g5b5_unorm_pack16.* .a8b8g8r8_unorm_pack32.a1r5g5b5_unorm_pack16.* .a8b8g8r8_snorm_pack32.a1r5g5b5_unorm_pack16.* Bug b/119620767 Change-Id: I366cb5697b60b4f0fb51931a6be7b8732cf789ec Reviewed-on: https://swiftshader-review.googlesource.com/c/23328Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Added enums for mostly implemented format, along with the implementation for 2 new formats: VK_FORMAT_B4G4R4A4_UNORM_PACK16 VK_FORMAT_A2B10G10R10_UINT_PACK32 (as a true integer format) Bug b/119620767 Change-Id: I139408609cdbc35f7d9b0a8220e86a598c70a9e9 Reviewed-on: https://swiftshader-review.googlesource.com/c/23309Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
Alexis Hetu authored
Added missing VkFormat entries to the following functions: Surface::hasQuadLayout Surface::isFloatFormat Surface::isUnsignedComponent Surface::isSRGBformat Surface::isCompressed Surface::isSignedNonNormalizedInteger Surface::isUnsignedNonNormalizedInteger Surface::componentCount Surface::selectInternalFormat Bug b/118429780 Change-Id: I46f8fb3f8a14f82a2b6615e129e4de0443666eca Reviewed-on: https://swiftshader-review.googlesource.com/c/23308Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
Alexis Hetu authored
First simple implementation of image blitting. Note that layers are not yet taken into account. Passes almost all tests in (There are only 2 failures, which both have an off by 1 error on a single pixel): dEQP-VK.api.copy_and_blit.core.blit_image.simple_tests.* Bug b/118619338 b/119620767 Change-Id: I1e0ac88089d6159924569099ea6345804a219d2c Reviewed-on: https://swiftshader-review.googlesource.com/c/23268Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Added buffer copy command and support for VkBufferCopy regions. Passes all tests in: dEQP-VK.api.copy_and_blit.core.buffer_to_buffer Bug b/118619338 Change-Id: Id69cd3f089b07343a7209290808c11d4c17f1a49 Reviewed-on: https://swiftshader-review.googlesource.com/c/23229Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Added support for image regions and buffer rowLength/imageHeight for Image to Buffer copies or Buffer to Image copies. Passes all tests in: dEQP-VK.api.copy_and_blit.core.image_to_buffer dEQP-VK.api.copy_and_blit.core.buffer_to_image Bug b/119620767 Change-Id: I2b2592c06d52609c3f9c51fa164a0335f58f361f Reviewed-on: https://swiftshader-review.googlesource.com/c/23228Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 18 Dec, 2018 2 commits
-
-
Alexis Hetu authored
Added implementation for Depth and Stencil which currently allocates Depth and Stencil as 2 contiguous image planes in memory. Copying to and from depth and stencil planes is now supported which fixes all failures in: dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.depth_stencil Which were the last remaining failures in: dEQP-VK.api.copy_and_blit.core.image_to_image Bug b/119620767 Change-Id: Ie90737c219c70d9c8a68c024ed33292812a3b7f4 Reviewed-on: https://swiftshader-review.googlesource.com/c/23209Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Added basic support for array layers in Image objects. This allows allocating the memory for multiple layers, copying between a 2D image with multiple layers to and from a 3D image. Passes all tests in: dEQP-VK.api.copy_and_blit.core.image_to_image.3d_images.* Bug b/119620767 Change-Id: I305650ba89f90dcd527b484fc3ed095a309506d1 Reviewed-on: https://swiftshader-review.googlesource.com/c/23208Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 13 Dec, 2018 1 commit
-
-
Alexis Hetu authored
This fixes a memory leak in the Queue object. The sw::Renderer object has a non trivial destructor, which means we need to call it before deallocating the Queue objects. Bug b/117974925 Change-Id: I1e13c6108e77d5cdcbea337d572f72fdd32530a1 Reviewed-on: https://swiftshader-review.googlesource.com/c/23188Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 12 Dec, 2018 6 commits
-
-
Chris Forbes authored
Change-Id: I5feee7fb928a49762faa8154804fc4b0e86f60b8 Reviewed-on: https://swiftshader-review.googlesource.com/c/23169Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Piped all the information from the vertex buffers and the pipeline to the renderer to perform a draw. In order for the renderer and the context to have proper lifetimes, they both reside in the Queue object for now. Bug b/118619338 Change-Id: Ifa03acd13ceb065a856b50f2cffadd4ee6b9a163 Reviewed-on: https://swiftshader-review.googlesource.com/c/23111Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Implemented vkCmdBeginRenderPass and vkCmdEndRenderPass. The RenderPass object begin and end are noop for now, but the framebuffer gets cleared within vkCmdBeginRenderPass. Bug b/119620965 b/118619338 Change-Id: I8e1f2932d9d52b3dcb5c10d4e60cba83b28bb95d Reviewed-on: https://swiftshader-review.googlesource.com/c/23108Reviewed-by:
Corentin Wallez <cwallez@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Adjusted a few checks in the GraphicsPipeline constructor, specifically stages' specialization info and sample mask, which can either be null or default. Also fixed destroying Pipeline objects, making sure there's no confusion between GraphicsPipeline and ComputePipeline's destroy() methods inherited from their 2 base classes (Pipeline::destroy() and ObjectBase::destroy()). Bug b/118386749 Change-Id: I78be9f0bbb735518e07d52f7372dbf08b9834abf Reviewed-on: https://swiftshader-review.googlesource.com/c/23110Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Use the blitter to implement Image::clear. The image can be easily packed into a sw::Surface. For now, the surface is a temporary, but it may become a member in the future if it makes sense. Bug b/119620767 Change-Id: I122a321509dc8cc5b624ddd776bd9059eee0cbc4 Reviewed-on: https://swiftshader-review.googlesource.com/c/23109Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
Added VkImageView object. Added "clear" function to illustrate the link between VkFramebuffer attachments, VkImageView and VkImage, along with the minimal set of class members to allows the function arguments to be used properly. Bug b/119620767 b/119621736 Change-Id: I0e7e6017979960bacbdf888d632c83edda3483cf Reviewed-on: https://swiftshader-review.googlesource.com/c/22668Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 11 Dec, 2018 5 commits
-
-
Alexis Hetu authored
Implemented Image to Image copy, Image to Buffer copy and Buffer to Image copy commands which are required in order to run the dEQP-VK.api.copy_and_blit.core.image_to_image.* tests. Passes over 99.7% of the 10907 tests in: dEQP-VK.api.copy_and_blit.core.image_to_image.* Bug b/118619338 b/119620767 Change-Id: Id4d3aa5186bed84d0925e4424399716efbd241ee Reviewed-on: https://swiftshader-review.googlesource.com/c/23071Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
Alexis Hetu authored
A call to vkBeginCommandBuffer implicitly resets the command buffer. Bug b/118619338 Change-Id: I020a2d15915cbb309dbcd012b2dbbf34ca2f63c6 Reviewed-on: https://swiftshader-review.googlesource.com/c/23148Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
Alexis Hetu authored
Image objects now have the ability to copy their content to another image object. They can also copy their content to or from Buffer objects. Bug b\119620767 Change-Id: I047e9ecdcc11e264589de1d9461ef448f22a4d9e Reviewed-on: https://swiftshader-review.googlesource.com/c/23070Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
Includes only the include/spirv/unified1 subtree. Based on git://github.com/KhronosGroup/spirv-tools revision 17da9f8231f78cf519b4958c2229463a63ead9e2 Bug: b/120799499 Change-Id: Ifb790bf95035d7feb2d54d07e1475013dfd298b1 Reviewed-on: https://swiftshader-review.googlesource.com/c/23048Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Nicolas Capens authored
Ideally we'd use the [[fallthrough]] attribute to silence this, but that isn't supported until C++17 and we're sticking with C++11 for now. Bug b/120382288 Change-Id: I98f28e42505ed496b0b35c29a7dc03fca18cf4ff Reviewed-on: https://swiftshader-review.googlesource.com/c/23128Reviewed-by:
Greg Hartman <ghartman@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Nicolas Capens <nicolascapens@google.com>
-
- 07 Dec, 2018 3 commits
-
-
Alexis Hetu authored
Buffer now has the ability to copy its content to or from memory. Bug b/118383648 Change-Id: Ic01bf049fe054559299830ca750263c2277e4d86 Reviewed-on: https://swiftshader-review.googlesource.com/c/23069Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
For the purpose of running dEQP tests, for now, fences can be implemented as noop. Once more complex rendering tests exercise this, we'll be able to implement and test fences. Bug b/117835459 Change-Id: I2b54be816c83f7a626108f61bd14eb9c969a2b0f Reviewed-on: https://swiftshader-review.googlesource.com/c/23068Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Alexis Hétu <sugoi@google.com>
-
Alexis Hetu authored
Because of existing synchronization mechanisms in SwiftShader, pipeline barriers can be noop for now. If we do remove those synchronization mechanisms, there's also a simple way of implementing pipeline barriers, which is commented on here. Bug b/118619338 Change-Id: If82d275c46f234e5549018115c9f19f21e2c09b2 Reviewed-on: https://swiftshader-review.googlesource.com/c/22708Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com>
-
- 06 Dec, 2018 5 commits
-
-
Chris Forbes authored
One part of this might change -- master contains some uses of std::make_unique which Alexis might get rid of. Change-Id: I40ae17f4e88920c4d60b79e1d4b117a7800fcd82 Reviewed-on: https://swiftshader-review.googlesource.com/c/23028Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
Alexis Hetu authored
MacOS' linker dislikes local static variables that are used in two separate libraries. Removing them from the header files fixes all the warnings. Bug b/chromium:907088 Change-Id: I7b8ed44bf9a3180489a7407980740fd3f3863046 Reviewed-on: https://swiftshader-review.googlesource.com/c/22889Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
This cl adds the code needed to record and submit the minimal subset of commands required to run a simple triangle example. The commands themselves are still unimplemented. Bug b/116336664 Change-Id: Id0109980225a64a2bb3599a89a5495091926c635 Reviewed-on: https://swiftshader-review.googlesource.com/c/22168Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
Added a few class members and adjusted the VkPipeline constructor to extract basic parameters which will be used for rendering, like: - Basic sw::Context parameters - Scissor - Viewport - BlendConstants Note: sw::Context should eventually be replaced by VkPipeline and be used directly by sw::Renderer once all existing OpenGL ES 3.0 has been converted from VkPipeline. (Chris: rebase + build system fixes for CMake path) Change-Id: I7e7a9ff3c768da8e8c1e9461e140af4986429602 Reviewed-on: https://swiftshader-review.googlesource.com/c/22613Tested-by:Alexis Hétu <sugoi@google.com> Reviewed-by:
Corentin Wallez <cwallez@google.com>
-
Chris Forbes authored
Change-Id: I45349cd6530814efa0c466beb0df7d53b4e17948 Reviewed-on: https://swiftshader-review.googlesource.com/c/23008Reviewed-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
- 30 Nov, 2018 2 commits
-
-
Kevin Schoedel authored
Bug b/114402930 Change-Id: I228222003e5f015e4966eacc32094a48a7054d0f Reviewed-on: https://swiftshader-review.googlesource.com/c/22988Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Kevin Schoedel <kpschoedel@google.com>
-
Alexis Hetu authored
Added functionality so that the CommandPool can allocate and free command buffer objects. Bug b/119827933 Change-Id: I190ba3cd7738f2b5e37b196a0abba6d07cfae173 Reviewed-on: https://swiftshader-review.googlesource.com/c/22748Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-