Commit Graph

10747 Commits

Author SHA1 Message Date
baldurk 90c10ea1fc Handle boolean inputs in vulkan shader parameters
* We change to use VarType instead of CompType for signature parameters which
  allows us to represent different types of variables beyond just
  unsigned/signed integer and float.
2020-05-07 22:46:41 +01:00
Aliya Pazylbekova c70929d40a Vk Pixel History: misc fixes incl. fragment count
- Filter events that don't match image view range
- Leave some tests in the original state. Disable depth test and write,
  this causes the individual fragments that failed the depth test to
  show up, but the post modification value for them will be accurate.
- Fix a couple of things: delete TestsFailedCallback, and fix the
  padding
2020-05-07 22:46:19 +01:00
baldurk d0bd2e8da2 Fix calculation of number of rows in block DDS formats. Closes #1870
* The number of rows should be the ceiling of the 4-row number, since any
  overlap becomes a whole extra row of blocks.
2020-05-07 12:37:06 +01:00
baldurk ec0cb41c17 Fix vulkan tests looking for old variable name 2020-05-07 12:36:25 +01:00
baldurk 986fcddc9f When patching descriptors into set, check limits aren't exceeded
* This would be quite an edge case in itself if our added descriptors pushed it
  over the limit, but this is much more likely to happen on drivers where
  update-after-bind descriptor sets have much higher limits than normal
  descriptor sets. We cannot safely use update-after-bind descriptors, so
  instead we check to see if the limits are exceeded and bail out.
2020-05-07 11:11:19 +01:00
baldurk 3006e05d26 Add some marker regions to pixel history 2020-05-06 19:36:14 +01:00
baldurk 9c42e886ae Pass boundaries don't have any sub-draw modifications, same as clears 2020-05-06 19:35:50 +01:00
baldurk 343944db61 Fix anisotropy being lost when applying bias to sampler 2020-05-06 19:35:50 +01:00
baldurk 863636d243 Reset the list of replaced resources when closing a capture 2020-05-06 19:35:50 +01:00
baldurk 57168d36ad Don't add VkPhysicalDeviceVulkan12Features to pNext chain
* Its presence makes it invalid to have any of the components, rather than
  trying to merge any of them that might be present we can instead just add the
  individual VkPhysicalDeviceBufferDeviceAddressFeatures which is still legal.
2020-05-06 19:35:50 +01:00
baldurk 9d67549407 When enabling API validation register khronos validation layer too 2020-05-06 19:35:50 +01:00
baldurk 25ba64a085 Give better names to anonymous/unnamed variables
* With GLSL anonymous blocks the variable doesn't get a name, but the type does
  get a meaningful name - use that to name the variable.
2020-05-06 19:35:50 +01:00
baldurk 417dc91925 Set the correct number of columns for packed formats in buffer view 2020-05-06 19:35:50 +01:00
Aliya Pazylbekova 41b911d1d0 Vk Pixel History: MSAA depth/stencil copy, shader out
Use a separate compute shader module for MSAA copy, and output
directly into the destination buffer instead of creating
staging resources.

Support case where there is no depth stencil attachment to get post mod
values in per fragment reporting. Previously used the original
framebuffer that might not have had depth/stencil view, so couldn't
count the fragments. Now use the sub image.

To get the post mod color, we need to blend with the premod color, so
we use vkCmdCopyImage to copy from the original image.
2020-05-06 19:35:25 +01:00
baldurk 8a4f0a111d Fix out of bounds access if some threads have exited 2020-05-05 20:06:10 +01:00
baldurk f72cabc97a When continuing debug, only count steps where target lane is active 2020-05-05 19:56:54 +01:00
baldurk a0849b7cca Fix scope change of variables entering function call 2020-05-05 19:43:29 +01:00
baldurk a04e2d3517 Try to improve scoping of variable source mappings with no scope info 2020-05-05 19:36:45 +01:00
baldurk 18decf78b2 Treat entry point variables consistently with other functions 2020-05-05 18:59:49 +01:00
baldurk a9a821081a Don't mark resources as replaced more than once 2020-05-05 18:17:52 +01:00
baldurk 4c195dd93c Fix source variables not being marked as modified 2020-05-05 18:17:43 +01:00
baldurk 6f90abb6ab Fix sourcevar declarations for private variables 2020-05-05 17:53:14 +01:00
baldurk bc3b6b9d6c Improve disassembly of continue/break in loops and switches 2020-05-05 17:36:16 +01:00
baldurk 9dbdee0199 Use AllocateMemoryForResource for dummy image/buffer memory
* This makes the allocation more reliable e.g. for cases where the image memory
  can't share with buffer memory.
2020-05-05 17:12:50 +01:00
baldurk df58309f08 Don't render quad instead of fullscreen triangle for sample/math ops 2020-05-05 16:46:00 +01:00
baldurk 646bb736fa Fix problem if the uninitialised variable value is NaN 2020-05-05 16:24:27 +01:00
baldurk 84fc7f7950 Fix handling of dynamic buffer offsets in non-debugged stages 2020-05-05 16:24:12 +01:00
Steve Karolewics f312dbba08 Add a D3D12 test for various VS/PS shader linkage scenarios
Fixed a bug that this new test uncovered. There are still several
draw calls that fail in this test, which can be fixed in future changes
2020-05-04 18:44:56 +01:00
jpark37 a8cf6f275e Add IUnknown support to WrappedID3D11Device::OpenSharedResourceInternal 2020-05-04 15:47:35 +01:00
baldurk 0e8cb5b2eb Set search direction properly for find previous/next. Closes #1866 2020-05-04 13:48:25 +01:00
baldurk 007ad9f429 Add spec-required features in 1.2 features struct
* If we add this struct to enable buffer device address we must also enable any
  other features the spec requires.
2020-05-04 13:40:01 +01:00
baldurk 85bd67829c Compile fix for apple, unused lambda capture 2020-04-30 20:28:03 +01:00
baldurk d7a4475c9c OpConvertFToU for negative input is undefined, don't test it 2020-04-30 19:41:52 +01:00
baldurk 7512834ed0 Array layer is not needed when querying lod 2020-04-30 19:01:01 +01:00
baldurk b7aeada8c7 Ensure dummy cubemap view has 6 layers visible 2020-04-30 19:00:48 +01:00
baldurk 943515fcbf Fix OpPhi breaking if function call stomped last known block 2020-04-30 18:15:29 +01:00
baldurk 38058fadac Add some OpPhi tests 2020-04-30 18:15:29 +01:00
baldurk 4b45c6be96 Handle naming structs properly 2020-04-30 18:15:29 +01:00
baldurk 98f0a926b8 Make sections of SPIR-V asm global so tests can append to them 2020-04-30 18:15:29 +01:00
baldurk e1a7349b9c Support variable initialisers
* We also set uninitialized variables to 0xcccccccc to make it clearer that they
  are invalid.
2020-04-30 18:15:29 +01:00
baldurk d9a189425c Don't override RGP setting in RGP tests 2020-04-30 18:15:29 +01:00
baldurk 47bf8adccd Fix case of VK_Pixel_History file 2020-04-30 18:15:29 +01:00
baldurk a28f77ab7d Support debugging fetching input attachments 2020-04-30 18:15:29 +01:00
baldurk 4695259078 Subpass inputs are considered read-only 2020-04-30 18:15:29 +01:00
baldurk e2fce8cad1 Fix crash if accessed resource is unbound 2020-04-30 18:15:29 +01:00
baldurk 1a057303a2 Don't add Storage to type name for subpass inputs 2020-04-30 18:15:29 +01:00
baldurk 4b3ef6c6f4 Add block decoration when using StorageBuffer storage class 2020-04-30 18:15:28 +01:00
baldurk f6ec10659d Tighten up comparisons in Resource_Lifetimes tests 2020-04-30 18:15:28 +01:00
baldurk fc3980b610 Fix GL_Vertex_Attr_Zoo test 2020-04-30 18:15:28 +01:00
baldurk 0b3b026fdb Fix VK_CBuffer_Zoo test 2020-04-30 18:15:28 +01:00