diff options
| author | Yong He <yonghe@outlook.com> | 2021-03-25 09:41:53 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-25 09:41:53 -0700 |
| commit | e050035e0b7d3f257a46bc1cb644163026cb1b23 (patch) | |
| tree | e4a38fa4c2f26313c2d374a19c5a4a1904ffdeb1 /tests | |
| parent | 98afb421f408aa8651afff3dba1b21fad71131fe (diff) | |
Improve Vulkan shader-objects implementation. (#1765)
* Improve Vulkan shader-objects implementation.
1. Null bindings no longer crashes.
2. No longer copies push constants to staging CPU buffer before setting it into command buffer. The entry-point shader object now directly sets it into command buffer upon `bindObject` call.
* Update comments
* Fix
* Re-enable 3 tests.
Improved vulkan implementation so that each shader object is responsible for creating descriptor sets on-demand.
Fixed slang reflection to correctly report `ParameterBlock` binding.
* Fix gcc compile error.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/compute/entry-point-uniform-params.slang | 12 | ||||
| -rw-r--r-- | tests/compute/parameter-block.slang | 7 | ||||
| -rw-r--r-- | tests/disabled-tests.txt | 3 | ||||
| -rw-r--r-- | tests/render/cross-compile-entry-point.slang | 5 |
4 files changed, 15 insertions, 12 deletions
diff --git a/tests/compute/entry-point-uniform-params.slang b/tests/compute/entry-point-uniform-params.slang index 8d91deeef..1ed9a0646 100644 --- a/tests/compute/entry-point-uniform-params.slang +++ b/tests/compute/entry-point-uniform-params.slang @@ -4,11 +4,13 @@ // entry points are allowed, and work as expected. //DISABLE_TEST:CPU_REFLECTION: -profile cs_5_0 -entry computeMain -target cpp -//TEST(compute):COMPARE_COMPUTE_EX:-cuda -compute -shaderobj -//DISABLED_TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -cpu -//DISABLED_TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -//DISABLED_TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -dx12 -//DISABLED_TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute +//TEST(compute):COMPARE_COMPUTE: -dx12 -shaderobj +//TEST(compute):COMPARE_COMPUTE: -vk -shaderobj +//TEST(compute):COMPARE_COMPUTE: -dx11 -shaderobj +//TEST(compute):COMPARE_COMPUTE: -cuda -shaderobj +//TEST(compute):COMPARE_COMPUTE: -cpu -shaderobj + + struct Signs { diff --git a/tests/compute/parameter-block.slang b/tests/compute/parameter-block.slang index 331eebf7c..b1f861236 100644 --- a/tests/compute/parameter-block.slang +++ b/tests/compute/parameter-block.slang @@ -1,5 +1,8 @@ -//TEST_DISABLED(compute):COMPARE_COMPUTE: -//TEST_DISABLED(compute):COMPARE_COMPUTE:-cpu +//TEST(compute):COMPARE_COMPUTE:-cpu -shaderobj +//TEST(compute):COMPARE_COMPUTE:-cuda -shaderobj +//TEST(compute):COMPARE_COMPUTE:-vk -shaderobj +//TEST(compute):COMPARE_COMPUTE:-shaderobj + //TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=block0.buffer //TEST_INPUT:ubuffer(data=[0 1 2 3], stride=4):name=block1.buffer diff --git a/tests/disabled-tests.txt b/tests/disabled-tests.txt index 5fa9d98b0..69538a7de 100644 --- a/tests/disabled-tests.txt +++ b/tests/disabled-tests.txt @@ -13,14 +13,12 @@ These tests will need to be re-enabled together with changes to the shader objec * compute/dynamic-dispatch-13.slang * compute/dynamic-dispatch-14.slang * compute/dynamic-dispatch-bindless-texture.slang -* compute/entry-point-uniform-params.slang * compute/global-type-param2.slang * compute/global-type-param-array.slang * compute/global-type-param1.slang * compute/interface-shader-param-in-struct.slang * compute/interface-shader-param-legalization.slang * compute/interface-shader-param.slang -* compute/parameter-block.slang * compute/performance-profile.slang * compute/rewriter-parameter-block-complex.hlsl * compute/unbounded-array-of-array-syntax.slang @@ -35,7 +33,6 @@ These tests will need to be re-enabled together with changes to the shader objec * language-feature/shader-params/global-uniform-params.slang * tests/serialization/serialized-module-entry-point-test.slang * serialization/library-entry-point/library-entry-point-test.slang -* render/cross-compile-entry-point.slang * render/cross-compile0.hlsl * render/imported-parameters.hlsl * render/nointerpolation.hlsl diff --git a/tests/render/cross-compile-entry-point.slang b/tests/render/cross-compile-entry-point.slang index 24d3c711d..869df80bc 100644 --- a/tests/render/cross-compile-entry-point.slang +++ b/tests/render/cross-compile-entry-point.slang @@ -1,5 +1,6 @@ -//DISABLED_TEST(render):COMPARE_HLSL_CROSS_COMPILE_RENDER: -//DISABLED_TEST(render):COMPARE_HLSL_CROSS_COMPILE_RENDER: -dx12 +//TEST(render):COMPARE_HLSL_CROSS_COMPILE_RENDER: +//TEST(render):COMPARE_HLSL_CROSS_COMPILE_RENDER: -dx12 + // This is a test to ensure that we can cross-compile a complete entry point. |
