Android-x86
Fork
Donation

  • R/O
  • HTTP
  • SSH
  • HTTPS

external-swiftshader: List of commits

external/swiftshader


RSS
Rev. Tiempo Autor
1d667d6 pie-x86 android-x86-9.0-r1 android-x86-9.0-r2 2019-04-06 06:56:52 Chris Forbes

Disable surface and swapchain support for Android

On Android we will expose ANDROID_native_buffer instead, and leave the
surface and swapchain support to the android loader.

Bug: b/122837488
Change-Id: I03f0fd617042f49c19227701bbdcd2ccda883c94
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28408
Tested-by: Chris Forbes <chrisforbes@google.com>
Presubmit-Ready: Chris Forbes <chrisforbes@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

60da158 2019-04-06 05:50:52 Alexis Hetu

Support pNext chain entries in vkCreateImageView

Added support for these structures in vkCreateImageView:
VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR
VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO

These only add validation without modifying imageView behavior.

This should affect a few thousand tests, which now hit the next
UNIMPLEMENTED() call, inside the SPIR-V compiler.

Bug b/119620767

Change-Id: Icd2f9608d6b9ca1500ada8e51621c8d54ff9cd8d
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28429
Tested-by: Alexis Hétu <sugoi@google.com>
Presubmit-Ready: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

d6fae38 2019-04-06 05:50:10 Alexis Hetu

Sample location properly marked as unsupported

VK_EXT_sample_locations is not supported in SwiftShader, but all
related tests were being marked as unimplemented because
vkGetPhysicalDeviceProperties2 didn't handle
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT.
Explicitly ignored this case (with a proper verification that
VK_EXT_sample_locations is indeed marked as unsupported).

Bug b/117974925

Change-Id: I64a8540c0c30599c8a0a56ce322c563918ba2c31
Tests: dEQP-VK.pipeline.multisample.sample_locations_ext.*
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28428
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Alexis Hétu <sugoi@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>

67806a1 2019-04-06 05:12:15 Alexis Hetu

Input aspect support in vkCreateRenderPass

Added support for:
VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO
VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO
in vkCreateRenderPass.

These only add extra validations, but don't modify the renderpass' behavior.

Bug b/119620965

Change-Id: I0102a4f7fdd9f57de4ef7b0a813ead951dafe0bb
Tests: dEQP-VK.renderpass.*_use_input_aspect
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28448
Tested-by: Alexis Hétu <sugoi@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

6b51134 2019-04-06 03:09:02 Ben Clayton

SpirvShader: Implement descriptor set arrays

Introduce a new Object::Kind - DescriptorSet.
This represents a pointer to a vk::DescriptorSet*, which is now
dereferenced to access the buffer data in OpAccessChain or OpLoad / OpStore.
This shuffling is required to handle descriptor array access
as the array index is only known at OpAccessChain time.

Tests: *dynamic*
Bug: b/126330097
Change-Id: Id754d966d8945f4e4fcf7895ed2210ce4f6ba713
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28391
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

484e08e 2019-04-06 02:09:36 Ben Clayton

SpirvShader: Rework pointer types

Previously Objects of the Variable kind would hold an Object::ID to another pointerBase object, which was combined with a per-lane offset in SpirvRoutine::intermediates.
This is almost exactly the same as PhysicalPointer - except the base address was taken from SpirvRoutine::physicalPointers.

With descriptor indices, we need a dynamic base pointer (only known at emit time) with per lane offsets.

This change transforms the Kind::Variable and Kind::PhysicalPointer kinds into Kind::DivergentPointer and Kind::NonDivergentPointer. This reduces complexity in loads and stores, and better represents the various forms of pointer we care about.

Bug: b/126330097
Change-Id: I514af5962b9cad4109197893066eda6f996be107
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28390
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Chris Forbes <chrisforbes@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>

bd3af85 2019-04-05 22:51:27 Sean Risser

Improve the dEQP documentation for Linux.

The original dEQP.md covered Windows pretty well, but was confusing to
follow on Linux. So I've fleshed out the Linux process to be as complete
as the Windows process.

Change-Id: I8373e56db7d8d74bf5bcdfc7c7d23b740a11c25a
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28369
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Sean Risser <srisser@google.com>

72438f1 2019-04-05 21:49:35 Ben Clayton

Fix DescriptorUpdateTemplate::updateDescriptorSet

The logic did not handle desciptor arrays, or the descriptor overflow case.

Bug: b/123244275
Tests: *with_template*
Change-Id: Idf3f70848136865d1d76dc4f2f41b4c35d9230db
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28388
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>

4774761 2019-04-05 21:30:59 Ben Clayton

SpirvShader: Make value names more consistent

Rename Object::Kind::Value to Object::Kind::Intermediate.
Rename SpirvRoutine::Value to SpirvRoutine::Variable.

Change-Id: I1dba30687cbf979d80b0deeca7a96e64a88c94db
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28393
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

d67ee5f 2019-04-05 18:40:51 SwiftShader Regression Bot

Regres: Update test lists @ 0e3d328a

Change-Id: I45b04d1043a83a3732aab59a9009bdbbb1ee56ba
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28397
Reviewed-by: Ben Clayton <bclayton@google.com>
Tested-by: Ben Clayton <bclayton@google.com>

0e3d328 2019-04-05 07:09:26 Ben Clayton

SpirvRoutine: Verify create functions are called once per id

Just a safety belt that we're not doing stupid things.

Change-Id: I092b0755d151a559f793e1a9f30b17ef52626d10
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28389
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>

e6ab01f 2019-04-05 04:56:36 Stephen White

Implement an Android NDK build of SwiftShader using the CMake files.

From the build directory, run:

cmake -DCMAKE_TOOLCHAIN_FILE=../build/android.toolchain.cmake ..

Everything compiles and links. unittests, vk-unittests and ReactorUnitTests are known to work.
A "rundroid.sh" script is provided to upload and run Android binaries.
This CL has contains the first draft of an NDK-based FrameBuffer implementation.
It stubs out the gralloc calls in Image (consequence: EGLImage likely won't work).

NOTE: a small CMake patch is necessary; hopefully we'll find a way around this or land it in
CMake:

diff cmake-3.10/Modules/Platform/Android/Determine-Compiler-NDK.cmake.bak cmake-3.10/Modules/Platform/Android/Determine-Compiler-NDK.cmake
231c231
< set(_ANDROID_TOOL_C_COMPILER_EXTERNAL_TOOLCHAIN ${CMAKE_ANDROID_NDK}/toolchains/${_ANDROID_TOOL_NAME}/prebuilt/${_ANDROID_HOST_DIR})
---
> set(_ANDROID_TOOL_C_COMPILER_EXTERNAL_TOOLCHAIN ${CMAKE_ANDROID_NDK}/toolchains/${_ANDROID_TOOL_LLVM_NAME}/prebuilt/${_ANDROID_HOST_DIR})

Bug: b/129942368
Change-Id: I107a2f719256b6477ad105054ca68c676c05ec5c
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/27869
Presubmit-Ready: Stephen White <senorblanco@chromium.org>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

d39c96e 2019-04-05 01:16:23 Cody Schuffelen

Create a recursive version of MutexLock, and apply it to EGL.

This fixes one deadlock in Android's use of SwiftShader. Now fixed for
ASAN/tsan.

Bug: b/124530765
Test: atest CtsGraphicsTestCases:android.graphics.cts.BitmapTest#testDrawingHardwareBitmapNotLeaking -- --abi x86
Test: b/124530765#comment53
Signed-off-by: Cody Schuffelen <schuffelen@google.com>
Change-Id: Iacb04c0ac515eca1849d365c20efa84d58b75f72
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28308
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

90561c0 2019-04-05 00:43:23 Ben Clayton

Renderer.cpp: Refactor setBatchIndices...

... so we can use it for the non-indexed case.

Bug: b/118386749
Tests: dEQP-VK.draw.basic_draw.*
Change-Id: I21f1616db0b6613f8db6bff61f6aa1dfcf67c253
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28356
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

e3afd70 2019-04-04 18:00:55 SwiftShader Regression Bot

Regres: Update test lists @ 225a1301

Change-Id: Ie0776ebefe7d83eee26b98b9dbc84efa30dd2cad
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28357
Reviewed-by: Ben Clayton <bclayton@google.com>
Tested-by: Ben Clayton <bclayton@google.com>

225a130 2019-04-04 06:51:15 Ben Clayton

Implement dynamic buffer offsets.

Tests: *dynamic*
Bug: b/126330097
Change-Id: I7e4f7e3d921acb72878b7728216415ba66f63ec7
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28249
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>

fcbb145 2019-04-04 04:53:36 Alexis Hetu

Removed SwiftShader's custom DrawType enum

Replaced DrawType by VkPrimitiveTopology and VkIndexType.

Bug b/118386749

Change-Id: I6cd9a263b823e32c19ab85df7978cd674a757f1f
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/22848
Tested-by: Alexis Hétu <sugoi@google.com>
Presubmit-Ready: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

97e9589 2019-04-04 03:31:16 Chris Forbes

Add support for OpKill

Bug: b/124056625
Change-Id: I2e5650f81516da1e8f18775cb4b10ff5cfbb8a80
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28328
Presubmit-Ready: Chris Forbes <chrisforbes@google.com>
Tested-by: Chris Forbes <chrisforbes@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>

4fa92a7 2019-04-04 03:11:00 Ben Clayton

VkPipeline: Add basic optimization passes.

A lot of the Regres timeouts we are seeing are in LLVM code generation.
These appear to happen for shaders with a pathological number of loads and stores - most likely created by glslang.
Each of these loads and stores produce a bunch of branches in the LLVM IR (due to lane masking), which then choke LLVM.

Tests: dEQP-VK.ssbo.layout.*
Change-Id: I0bb654d9001d0d6bdd02244844bed8e73ce8d9d4
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28348
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Reviewed-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>

5d143aa 2019-04-04 00:50:42 Ben Clayton

SpirvShader: Ignore unreachable inputs for Phis.

Bug: b/128527271
Change-Id: I4bf01e7915735d7fd3dc827fd67873fff75a756f
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28354
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Ben Clayton <bclayton@google.com>

3740147 2019-04-03 21:28:09 Ben Clayton

Regres: Reduce dEQP logging efforts

Nothing reads these, save the SSD R/W cycles!

Change-Id: Ic49a40387672a1e5aaedb169d9d46f61daedc430
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28353
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

15f2e8c 2019-04-03 21:28:09 Ben Clayton

Regres: Remove hack to always start with a daily test

Change-Id: Ia8793c5274985a8474407a42628b054136de8aa9
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28352
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

24d1166 2019-04-03 21:28:09 Ben Clayton

Regres: Include failure reasons in CI message

Change-Id: I8aed6a72c4b9a2a575e441b846c581a67f82cf9b
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28351
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

f55e0a8 2019-04-03 21:28:09 Ben Clayton

Regres: Really kill timed-out processes

Only the parent process was being killed, allowing children to accumulate, eventually bringing down the machine.

Change-Id: I84e43265e53fe17058b3e3568919f6fad704f94f
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28350
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

e83248c 2019-04-03 21:28:09 Ben Clayton

Regres: Changes to reduce timeouts

* Shuffle the test lists to mix heavy-load tests with lighter ones.
* Bump the test timeout to 10 minutes.

Change-Id: I886b08993a39ce78fd198ac4a1ce06f7378dbb20
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28349
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

ba8b5ab 2019-04-03 19:34:45 SwiftShader Regression Bot

Regres: Update test lists @ 2b9fb4bf

Change-Id: I91eb237cd3a501eb06054b3069661de5869d8678
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28255
Reviewed-by: Ben Clayton <bclayton@google.com>
Tested-by: Ben Clayton <bclayton@google.com>

2b9fb4b 2019-04-03 12:33:45 Nicolas Capens

Switch to LLVM 7.0 for Visual Studio solution

Uses llvm.vcxproj generated by build/cmake.sh

Bug b/115344057

Change-Id: I09041d219f194e5ec97daad6b1b247a565909e98
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28110
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>

0475688 2019-04-03 12:33:45 Nicolas Capens

Default to 64-bit MSVC toolchain

Prevents linking issues with LLVM 7.0.

Bug b/115344057

Change-Id: I7270c2bcf6095b1ec9911074b3119f87680a7cad
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28168
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>

5454282 2019-04-03 12:33:45 Nicolas Capens

Add missing LLVM 7.0 source files

Fixes linking for MSVC build.

Bug b/115344057

Change-Id: I9a38d987f0cf8c20c670ccdb1c38dd49681bb941
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/27968
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>

c5da6e0 2019-04-03 12:33:45 Nicolas Capens

Rename swiftshader_icd.def to libvk_swiftshader.def

The CMake build derives the .def name from the project name, which is
libvk_swiftshader.

Bug b/115344057
Bug b/116336664

Change-Id: I236839b2da4531e01f5260705c189d9ae8df9769
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/27988
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>

Show on old repository browser