Commit Graph

205 Commits

Author SHA1 Message Date
30018181e0 libs/vkd3d-shader: Translate sqrt instruction. 2017-06-27 22:21:43 +02:00
8f6af1125d libs/vkd3d-shader: Get rid of VKD3D_SHADER_FLIP_Y compiler option.
We use negative viewport height to flip Y.
2017-06-27 22:21:43 +02:00
0afe0032b0 libs/vkd3d-shader: Add VKD3D_SHADER_STRIP_DEBUG compiler option. 2017-06-27 22:21:43 +02:00
dbfa823b42 libs/vkd3d-shader: Translate min/max instructions. 2017-06-27 22:21:43 +02:00
3f03cd1ec8 libs/vkd3d-shader: Implement root signature parsing. 2017-06-27 13:16:47 +02:00
d220ae4bfb libs/vkd3d: Add ID3D12RootSignatureDeserializer interface stub. 2017-06-27 13:16:47 +02:00
d998cb88c5 libs/vkd3d-shader: Implement constant interpolation mode.
For gears demo.
2017-06-27 13:16:47 +02:00
00b1a83ef5 libs/vkd3d-shader: Translate if/else/endif instructions. 2017-06-26 17:03:31 +02:00
7f4f305225 libs/vkd3d-shader: Introduce vkd3d_spirv_alloc_id() helper function. 2017-06-26 17:03:31 +02:00
77b3c5858f libs/vkd3d-shader: Pass format string to vkd3d_spirv_build_op_name(). 2017-06-26 17:03:31 +02:00
cb79f2ec65 libs/vkd3d-shader: Implement floating-point comparison instructions. 2017-06-26 17:03:31 +02:00
cd8eb358e9 libs/vkd3d-shader: Refactor immediate constants handling. 2017-06-26 17:03:31 +02:00
be9849ace4 libs/vkd3d: Avoid race condition when destroying fences. 2017-06-26 17:03:31 +02:00
ae8d869013 libs/vkd3d: Use VK_NULL_HANDLE instead of NULL.
Fixes a compiler warning for 32-bit builds.
2017-06-26 17:03:31 +02:00
becd93c8bd libs/vkd3d-shader: Emit Offset decoration for uniform buffer struct members.
The SPIR-V spec says:

  "Composite objects in the UniformConstant, Uniform, and PushConstant Storage
  Classes must be explicitly laid out."

Intel Anvil driver uses uninitialized memory for offsets when Offset
decorations are missing.
2017-06-23 22:24:33 +02:00
9a59184e9f libs/vkd3d: Reset current root signature in d3d12_command_list_Reset(). 2017-06-23 22:24:33 +02:00
532da7d4e1 libs/vkd3d: Clear current descriptor set when descriptor pool is destroyed. 2017-06-23 22:24:33 +02:00
fa52702774 libs/vkd3d: Always update current root signature in d3d12_command_list_SetGraphicsRootSignature(). 2017-06-23 22:24:33 +02:00
c0b5cf3df6 libs/vkd3d: Avoid updating descriptor sets bound to recording command buffer.
Fixes GPU memory page faults in gears demo on Nvidia.

The Vulkan spec says:

  "The descriptor set contents bound by a call to
  vkCmdBindDescriptorSets may be consumed during host execution of the
  command, or during shader execution of the resulting draws, or any
  time in between. Thus, the contents must not be altered (overwritten
  by an update command, or freed) between when the command is recorded
  and when the command completes executing on the queue."
2017-06-23 22:24:33 +02:00
99d82668a0 libs/vkd3d-shader: Avoid generating 2 OpVectorShuffles per mov instruction. 2017-06-22 13:36:18 +02:00
05842705b4 libs/vkd3d-shader: Enforce required component count for builtin shader inputs. 2017-06-22 13:36:18 +02:00
4e5fcb5141 libs/vkd3d: Use negative viewport height to flip along y-axis.
Requires VK_KHR_maintenance1.
2017-06-21 22:00:19 +02:00
d515e3d047 libs/vkd3d: Require VK_KHR_maintenance1 device extension. 2017-06-21 22:00:19 +02:00
4ced2e7789 libs/vkd3d-shader: Translate "neg" source modifier. 2017-06-21 22:00:19 +02:00
f5e3b248df libs/vkd3d-shader: Fix SV_Position in pixel shaders. 2017-06-21 22:00:19 +02:00