Józef Kucia
7b5d745ef5
tests: Fix compilation with -O0.
2017-10-25 22:55:39 +02:00
Józef Kucia
f04389d90b
libs/vkd3d-shader: Use more sensible default descriptor binding assignment.
2017-10-25 14:34:44 +02:00
Józef Kucia
e959686f12
libs/vkd3d-shader: Make sure that OpVariables are first instructions in main function.
...
The SPIR-V spec says:
"All OpVariable instructions in a function must be in the first block
in the function. These instructions, together with any immediately
preceding OpLine instructions, must be the first instructions in that
block."
2017-10-25 09:58:14 +02:00
Józef Kucia
b65c42e6f9
libs/vkd3d-shader: Avoid OpVectorShuffle on scalars.
...
The SPIR-V spec states:
"Vector 1 and Vector 2 must both have vector types, with the same
Component Type as Result Type."
2017-10-24 21:26:48 +02:00
Józef Kucia
2b21fbf6b8
libs/vkd3d: Add VKD3D_SHADER_DUMP_PATH environment variable for dumping shaders.
...
A similar functionality was helpful numerous number of times when
developing libvkd3d-shader.
2017-10-24 15:22:01 +02:00
Józef Kucia
f270e36c78
tests: Unify ok() messages.
2017-10-24 12:10:48 +02:00
Józef Kucia
49c3eb69d9
tests: Add helper functions for creating descriptor heaps.
2017-10-24 12:10:48 +02:00
Józef Kucia
e3dfbab2fa
tests: Do not re-create buffer in test_tgsm().
2017-10-24 12:10:48 +02:00
Józef Kucia
f2b37c732a
libs/vkd3d: Use if-else in d3d12_command_list_get_fb_extent().
2017-10-24 12:10:48 +02:00
Józef Kucia
c70a023aeb
libs/vkd3d: Remove FIXME comment from vk_barrier_parameters_from_d3d12_resource_state().
2017-10-24 12:10:48 +02:00
Józef Kucia
56391f471c
tests: Add test for copying from depth texture to color texture.
2017-10-20 18:27:17 +02:00
Józef Kucia
b211df683e
libs/vkd3d: Implement copying between depth/stencil and color textures.
...
This could be implemented more efficiently, but ideally we would get
a Vulkan extension for copying between depth/stencil and color textures.
2017-10-20 18:27:17 +02:00
Józef Kucia
a4bd0c1c90
libs/vkd3d: Allocate GPU virtual addresses in d3d12_committed_resource_init().
2017-10-20 18:27:17 +02:00
Józef Kucia
b0979b27f6
tests: Fix shader code in test_depth_load().
2017-10-20 18:27:17 +02:00
Józef Kucia
a63b81858c
libs/vkd3d: Limit buffer usage flags based on heap type.
2017-10-20 18:27:17 +02:00
Józef Kucia
310335f748
libs/vkd3d-shader: Branch directly to merge block when switch default block is absent.
2017-10-20 18:27:17 +02:00
Józef Kucia
137b5d694b
libs/vkd3d-shader: Move inside_block field to vkd3d_control_flow_info.
2017-10-18 19:02:46 +02:00
Józef Kucia
c112f2ed46
libs/vkd3d-shader: Get rid of VKD3D_BLOCK_ELSE.
2017-10-18 19:02:46 +02:00
Józef Kucia
9f831b938a
libs/vkd3d-shader: Avoid emitting empty else branches.
...
We have to patch SpvOpBranchConditional instruction when emitting the
else block because we do not know if an else block is present in
advance.
2017-10-18 19:02:46 +02:00
Józef Kucia
646385e871
libs/vkd3d-shader: Get rid of VKD3D_BLOCK_MAIN.
2017-10-18 19:02:46 +02:00
Józef Kucia
8a047a8eb7
libs/vkd3d-shader: Rename control flow union member for if instructions.
2017-10-18 19:02:46 +02:00
Józef Kucia
8f3e071868
tests: Add additional test for rcp instruction.
2017-10-18 12:27:41 +02:00
Józef Kucia
0369f39a47
libs/vkd3d-shader: Generate correct SPIR-V for rcp with multiple components.
2017-10-18 12:21:24 +02:00
Józef Kucia
7fa3f2ed1a
libs/vkd3d: Add FIXME comment for GPU VA allocator.
2017-10-18 11:54:56 +02:00
Józef Kucia
c5e400fa30
libs/vkd3d-shader: Document hacks introduced for Nvidia driver.
...
See 70f5b24f92
.
2017-10-12 17:47:53 +02:00
Józef Kucia
62b6530af3
libs/vkd3d-shader: Check return values of imm_atomic_consume in test_decrement_uav_counter().
2017-10-12 13:10:26 +02:00
Józef Kucia
a7bd28ffac
tests: Use better variable names in test_uav_counters().
2017-10-12 13:10:26 +02:00
Józef Kucia
eecd16f1cd
tests: Fix test_uav_counters().
...
Results were read from the wrong buffer.
2017-10-12 13:10:26 +02:00
Józef Kucia
2171ba6d32
libs/vkd3d-shader: Decrement OpAtomicIDecrement result.
2017-10-12 13:10:26 +02:00
Józef Kucia
94a33020d3
libs/vkd3d-shader: Use switch statement in shader_parse_root_parameters().
2017-10-10 16:57:36 +02:00
Józef Kucia
4522a80de8
libs/vkd3d-shader: Use switch statement in shader_write_root_parameters().
2017-10-10 16:57:36 +02:00
Józef Kucia
18b285328e
libs/vkd3d-shader: Add version argument to vkd3d_shader_serialize_root_signature().
2017-10-10 16:57:36 +02:00
Józef Kucia
f4cfebcd7e
libs/vkd3d: Remove hack for creating root signatures from description.
2017-10-10 16:02:09 +02:00
Józef Kucia
7129e23aef
demos: Remove hack for creating root signatures.
2017-10-10 16:02:09 +02:00
Józef Kucia
cb417ef46b
tests: Remove hack for creating root signatures.
2017-10-10 16:02:09 +02:00
Józef Kucia
5b5cffcf84
libs/vkd3d: Implement creating root signature from bytecode.
2017-10-10 16:02:09 +02:00
Józef Kucia
6b9c3b8971
tests: Add test for root signature serialization.
2017-10-10 16:02:09 +02:00
Józef Kucia
4629cbdf8a
libs/vkd3d: Implement D3D12SerializeRootSignature().
2017-10-10 16:02:09 +02:00
Józef Kucia
6b43a5fe38
libs/vkd3d-shader: Implement root signature serialization.
2017-10-10 16:02:09 +02:00
Henri Verbeet
53654baab9
libs/vkd3d: Support D3D12_FEATURE_FORMAT_SUPPORT in d3d12_device_CheckFeatureSupport().
2017-10-10 13:09:32 +02:00
Józef Kucia
4504aa65ef
tests: Add test for constant buffer relative addressing.
2017-10-06 17:06:31 +02:00
Józef Kucia
586e1cc532
libs/vkd3d-shader: Implement relative addressing for constant buffers.
2017-10-06 17:06:31 +02:00
Józef Kucia
853068c84d
libs/vkd3d: Get rid of host writes memory dependency for intial state transitions.
2017-10-06 17:06:31 +02:00
Józef Kucia
97bfba1167
libs/vkd3d: Avoid read access bits in source access masks.
...
A memory dependency is used to make memory writes available
and visible.
2017-10-06 17:06:31 +02:00
Józef Kucia
05f52dc079
tests: Add test for switch without default case.
2017-10-05 15:58:51 +02:00
Józef Kucia
5479ac7011
libs/vkd3d-shader: Always emit default block for OpSwitch.
...
The default block is required in SPIR-V.
2017-10-05 15:58:51 +02:00
Józef Kucia
9feb7a3956
libs/vkd3d-shader: Recognize nop instruction.
2017-10-05 15:58:51 +02:00
Józef Kucia
50df52427f
tests: Add test for clearing buffer unordered access views.
2017-10-04 13:55:33 +02:00
Józef Kucia
67aed755ab
libs/vkd3d: Implement d3d12_command_list_ClearUnorderedAccessViewUint() for R32_UINT buffer views.
...
Ideally, we would store additional informations only in CPU descriptors.
2017-10-04 13:55:33 +02:00
Józef Kucia
fecc94cebc
libs/vkd3d: Add helpers for dereferencing descriptor handles.
2017-10-04 13:55:33 +02:00