Commit Graph

2685 Commits

Author SHA1 Message Date
baldurk 6a3cb34027 Bring together several more 'function'-like operations 2016-02-07 18:51:37 +01:00
baldurk 4825b67e62 Change naming for "dd?" functions 2016-02-07 18:51:37 +01:00
baldurk cc75e660ed Reverse-Z detection on output for vulkan 2016-02-07 18:51:36 +01:00
baldurk a9ed1c8c02 Explicit lod image sample instructions can also just have a grad value 2016-02-07 18:51:35 +01:00
baldurk 8bc3768ec0 Handle wordcount varying between DRef and other image sample ops 2016-02-07 18:51:34 +01:00
baldurk c5e32d47c4 Declare variables after processing func if they aren't declared inline 2016-02-07 18:51:33 +01:00
baldurk 21fc9f69d4 Add missing opcode ToStr case 2016-02-07 18:51:32 +01:00
baldurk 55c6eaf7d6 Fix 64-bit constant handling 2016-02-07 18:51:31 +01:00
baldurk 5e61958a1f Handle infinite while loops (no condition on the exitflow condition) 2016-02-07 18:51:30 +01:00
baldurk 90c12de53a Hide struct packing decorations as it's just noise 2016-02-07 18:51:30 +01:00
baldurk 23ed430f8b Don't merge function calls together, since it makes side-effects unclear 2016-02-07 18:51:29 +01:00
baldurk 4065d4d3e3 Handle OpInBoundsAccessChain the same as OpAccessChain 2016-02-07 18:51:28 +01:00
baldurk 1741762543 Add a bunch of similar math/unary operations 2016-02-07 18:51:27 +01:00
baldurk b1ce9de562 OpLine handling needs to be reworked 2016-02-07 18:51:26 +01:00
baldurk 8e633c2e46 Fix some indenting 2016-02-07 18:51:25 +01:00
baldurk 93dac6d4d0 Disassemble image sample operations better 2016-02-07 18:51:24 +01:00
baldurk 1dc1f071ff Add support for a couple of misc opcodes 2016-02-07 18:51:23 +01:00
baldurk 254321fcd1 Quick hacks to show SPIR-V disassembly with hlsl highlighting 2016-02-07 18:51:23 +01:00
baldurk 1d15a4b2ca Bump up maximum image attachments on framebuffer by 1 (8 colour + depth) 2016-02-07 18:51:22 +01:00
baldurk b4a9e58a87 Don't add extra memory heap if not fiddling with memory types 2016-02-07 18:51:21 +01:00
baldurk 54a9c8bfd5 Use atomic operations to modify resource record refcount
* Scary that this has been broken for so long!
2016-02-07 18:51:20 +01:00
baldurk c94e2e60b7 Don't add cache as parent if it's set to NULL 2016-02-07 18:51:19 +01:00
baldurk c7269afff2 Add missing lock around m_ImageLayouts access 2016-02-07 18:51:18 +01:00
baldurk e3b306d861 Fix temp memory size calculation 2016-02-07 18:51:17 +01:00
baldurk 1826c166b5 Avoid allocating/deleting array during capture when it's not needed 2016-02-07 18:51:16 +01:00
baldurk a98a5fe923 Make sure to unwrap parameters to vkInvalidateMappedMemoryRanges 2016-02-07 18:51:15 +01:00
baldurk 3f869e55c1 Handle Queue not being created (usually if device is destroyed quickly) 2016-02-07 18:51:15 +01:00
baldurk d3c52bbe90 Handle immutable samplers correctly on writing, they are wrapped already 2016-02-07 18:51:14 +01:00
baldurk 3eca6b5783 Use InstanceIndex and VertexIndex instead of InstanceID and VertexID
* These are the only supported indices in vulkan, and need careful
  rebasing to obtain 0-based indices from them.
2016-02-07 18:51:13 +01:00
baldurk ee7e050756 Set specialization constants properly when creating pipelines 2016-02-07 18:51:12 +01:00
baldurk 61dae8648f Make disassembly resiliant to missing children
* For now this is lack of handling of spec constant IDs, but remember
  this could happen any time in future due to unknown SPIR-V extensions.
2016-02-07 18:51:11 +01:00
baldurk fa3043e5c1 Set specialization constant size 2016-02-07 18:51:10 +01:00
baldurk c686dd2220 Make sure to only assign string without any trailing chars 2016-02-07 18:51:09 +01:00
baldurk 51cffd3bb7 Serialise specialization info correctly 2016-02-07 18:51:08 +01:00
baldurk 1f69ebdfe5 Skip push constant constant blocks when adding resource usage 2016-02-07 18:51:08 +01:00
baldurk 0b47a7f9ad Don't use pipeline caches on replay 2016-02-07 18:51:07 +01:00
baldurk 79ea895e78 Check for fences being live (a bit pointless, but consistent) 2016-02-07 18:51:06 +01:00
baldurk 6dd4381669 Handle sub-elements of VkGraphicsPipelineCreateInfo validly being NULL 2016-02-07 18:51:05 +01:00
baldurk 666c9c078b Don't accept size==0 on vkMapMemory, check for VK_WHOLE_SIZE 2016-02-07 18:51:04 +01:00
baldurk 73ad2e7b1d Remove references to $(ProgramFiles)\Windows Kits in search paths 2016-02-07 18:51:03 +01:00
baldurk 3f0ef3a37a Remove INCLUDE_D3D_11_1 and INCLUDE_DXGI_1_2
* There's no longer any reason for them, as dependencies are packed in
  and you don't need the Win 8 SDK installed anymore.
2016-02-07 18:51:02 +01:00
baldurk 74029dc9d9 Commit lightly modified D3D headers, to allow building without win SDK
* Headers taken from windows 10 SDK 10.0.10586.0
* A few includes stripped out of D3D10 and shader headers that aren't
  needed. Also winapifamily.h changed from #include <> to "".
2016-02-07 18:51:01 +01:00
baldurk 35ab1b3dfb Add missing element being serialised 2016-02-07 18:51:00 +01:00
baldurk 0039b011b9 Compile fix 2016-02-07 18:50:59 +01:00
baldurk 570af71c95 Update debug callback to ignore currently false-positive/spammy msgs
* Need to re-check this later
2016-02-07 18:50:58 +01:00
baldurk cd9cfc5bfa Only set write pointer for type of descriptor we're writing 2016-02-07 18:50:57 +01:00
baldurk 9a3905272d Update to the final frozen 1.0 header 2016-02-07 18:50:57 +01:00
baldurk 79c863c21d Make sure to add ALL leftovers after main loop in FakeProfileMarkers 2016-02-07 18:50:56 +01:00
baldurk f2d31c6f76 Initialise depthFB/depthRP in case they aren't assigned (no depth buf) 2016-02-07 18:50:55 +01:00
baldurk 7b7d02c55c Fix a couple of cases where depth/stencil aspects could still be wrong 2016-02-07 18:50:54 +01:00