Commit Graph

15689 Commits

Author SHA1 Message Date
baldurk 5e03c30684 Properly initialise and teardown replay during qrenderdoc unit tests 2025-03-05 09:50:48 +00:00
baldurk d23180a1f0 Fix comparison operator to not return true for x < x 2025-03-05 09:50:48 +00:00
baldurk b813fb2436 Allow glslang global lock to be used during process teardown
* During capture we may have to shutdown glslang from inside a global
  destructor, we need to ensure the lock is still valid.
2025-03-05 09:50:48 +00:00
baldurk c6cf956d50 Add macro helper to glslang for new C++ attributes 2025-03-04 18:48:14 +00:00
baldurk c98f50f9b7 Compile fix for glslang PCH not being used
* Weirdly building on upstream even without using PCH, <limits> ends up
  included. For some reason in RenderDoc it is not and needs the explicit
  include (which generally should be there)
2025-03-04 18:12:22 +00:00
baldurk 67df0f92e0 Warning fixes in glslang
* These could likely be upstreamed but are extremely minor (just silencing
  warnings, not fixing issues) and we will have local changes either way.
2025-03-04 16:35:03 +00:00
baldurk be2a35f5a6 Make downstream changes to glslang 15.1.0 to support compiling
* Remove use of newer STL classes like std::filesystem, std::variant and
  std::optional.
* Do not use inline variables - the only instance is also static constexpr
* Explicitly initialise std::array variables with type and size (also add extra
  {}s to appease an old clang warning)
* Work around old libstdc++ bug with move assignment and non-assignable
  allocators
* Remove redundant constexpr that warns on older compilers
* Remove use of declaration-inside-if statements
2025-03-04 16:34:24 +00:00
baldurk f377df2fed Update glslang to 15.1.0
* THIS COMMIT IS NOT EXPECTED TO COMPILE.
* Local changes will follow with downstream compile fixes.
2025-03-04 16:05:33 +00:00
baldurk 5b2ec79df3 Fix missing handling of dynamic offsets. Closes #3547 2025-03-04 13:14:55 +00:00
baldurk 78d67d334a Fix out of bounds destruction in rdcarray insert
* Update unit tests to catch this case (ideally/practically).
2025-03-04 11:33:43 +00:00
baldurk fc8c806dd6 Silence function cast warning on clang-19. Closes #3551 2025-03-04 11:11:02 +00:00
baldurk 1195487dd4 Bump version to v1.38 2025-03-02 14:40:37 +00:00
baldurk cd94206b0f Add sections in Repeat_Load test v1.37 2025-02-27 15:31:00 +00:00
baldurk fe9a875fab Fix documentation of ResultDetails.code 2025-02-26 16:13:24 +00:00
baldurk 19512165bb Bail from Iter_Test when fatal errors are detected 2025-02-26 16:12:10 +00:00
baldurk 7ac76492f4 Clamp pixel shader comparisons to output components in Iter_Test 2025-02-26 16:11:58 +00:00
baldurk fd85828351 Respect scalar swizzles while preserving out-of-bounds clamp behaviour 2025-02-26 12:34:41 +00:00
Jake Turner 631144faab Set per-thread builtins for Vk Compute single thread debugging
DispatchThreadIndex
GroupThreadIndex
GroupFlatIndex
2025-02-26 12:08:24 +00:00
Jake Turner 60d0c6b21c Handle NULL resource for AtomicOp's
Was already handled for UAV Load/Stores
Increase assert value for components (maximum is 16 instead of 4)
2025-02-25 18:44:21 +00:00
Jake Turner bfe042a288 DXIL Debugger extend SM6.6 Direct Heap Access support
SM6.6 Direct Heap Access was already implemented for Texture data sampling
Now support getting SRV/UAV Buffer data and UAV Texture data
2025-02-25 18:44:20 +00:00
baldurk 2c67e87c17 Fix handling of out-of-bounds raw buffer loads in DXBC debug 2025-02-25 12:35:11 +00:00
baldurk 81268dc79a Try to preserve selected pipeline stage as much as possible
* When switching between mesh/normal pipeline keep the same stage selected if
  it's a common stage even if the index has changed.
2025-02-25 11:42:56 +00:00
baldurk d8535c6678 Fix writing of fake availability results in AS queries 2025-02-25 11:25:48 +00:00
baldurk 3d316dc4b2 Serialise dummy AS query results and ensure resolves are nop'd 2025-02-25 11:24:12 +00:00
baldurk 339927e2b4 Update VMA version in demos project 2025-02-25 10:58:15 +00:00
baldurk 2bb425563b Task and mesh shaders are part of pre-rasterization library interface 2025-02-24 18:52:49 +00:00
baldurk f3129c908c Clarify renderdoc module vs library for python 2025-02-24 17:19:46 +00:00
baldurk 32879d6f7c Update docs to mention both python modules version overrides 2025-02-24 17:19:46 +00:00
Jake Turner 4ab9cba381 Get the element type from the Constant not Global Variable for GEP 2025-02-24 16:37:45 +00:00
Jake Turner f2de54c148 Fix missing else if causing false assert about unhandled OpCode 2025-02-24 16:37:45 +00:00
Jake Turner 88f817f77d Handle callstacks to class/struct member functions 2025-02-24 16:37:45 +00:00
Jake Turner 7ebd608cbe Add basic compute shader debug test action to iter_test
Does not check any output, purely runs DebugThread on a random groupId and threadId
2025-02-24 16:37:45 +00:00
baldurk 57ceb652e3 Don't show internal buffers in external replay on D3D12 2025-02-24 15:39:11 +00:00
Jake Turner 554e746cc8 Emit error message instead of crashing for missing SSA variables
Make GetLiveVariable() behave similarly to GetPhiVariable()
2025-02-21 16:48:00 +00:00
Jake Turner 8e733a7b01 Extend parsing for DbgOpDeclare source data : constants
Let any instruction opcode be valid for the instruction that creates the variable
2025-02-21 16:35:24 +00:00
Jake Turner 38d0fdbf72 Add sub sections to DXIL ControlFlow tests
Add [controlflow] tag to tests
2025-02-21 16:35:07 +00:00
baldurk 46f83c15a4 Ensure replay loop is cancelled before window is hidden
* See also f56a989e4f - we don't want to make the replay loop always on
  top though
2025-02-21 14:38:54 +00:00
baldurk 31d29fcea1 Add python function to clear replay cache 2025-02-21 14:19:12 +00:00
baldurk e59c0494a5 Add fatal error checks to avoid crashes on load in AS init state apply 2025-02-21 13:46:59 +00:00
baldurk 8f0e9a2c48 Ensure no false positives in tests if some values are 0.0 2025-02-21 13:46:59 +00:00
baldurk 0cc8cded0c Only simulate multiple threads with config option enabled 2025-02-21 13:46:59 +00:00
baldurk a9cc63904e Catch and print errors properly if unregister() fails 2025-02-21 13:46:59 +00:00
baldurk 783e7d47a5 Make python extension loading more robust to missing register/unregister 2025-02-21 13:46:59 +00:00
baldurk 875cd36f9d Detect up to python 3.15
* Future proofing I guess
2025-02-21 13:46:59 +00:00
baldurk e7f400e4f3 Add D3D12 handling of swizzled UAV loads/stores 2025-02-21 13:46:58 +00:00
baldurk 2ae986ff70 Cache blobs in PSO helper to allow in-line blob compilation 2025-02-21 13:46:58 +00:00
baldurk d6c560415a Add D3D11 handling of swizzled UAV loads/stores
* Ensuring we properly clamp for non-typed UAV stores. Typed UAV stores are
  'easy' because they must always write all components.
2025-02-21 13:46:58 +00:00
baldurk 5e3bfb29b2 Simulate and propagate gsm data in DXBC 2025-02-21 13:46:58 +00:00
baldurk fc5282398f SRCI sizes includes null terminator 2025-02-19 15:10:27 +00:00
baldurk ec476bea79 Skip library functions in RDAT for listing entry points 2025-02-19 15:10:27 +00:00