Commit Graph

13764 Commits

Author SHA1 Message Date
baldurk e13b4e95f0 Don't run selected draw twice in D3D11 triangle size overlay 2023-03-13 17:38:59 +00:00
Tony T df7ed64ad0 Create separate shader for sint, uint and floats
Co-authored-by: Orson B <obraines@gmail.com>
Signed-off-by: Tony T <tony@tonytascioglu.com>
2023-03-13 10:20:07 +00:00
Bruce He 50afbb05bc Address other comments 2023-03-13 10:20:07 +00:00
Bruce He 692617d814 Rename test gl_pixelhistory_formats to gl_pixel_history 2023-03-13 10:20:07 +00:00
Orson Baines 08be49dce3 Add first unit test for Open GL Pixel History
- Support for integer texture formats in OpenGL Pixel History implementation
- Test reading pixels from a triangle with a variety of texture formats
2023-03-13 10:20:07 +00:00
baldurk 40cd74c713 Fix early return when writing multiple sections in rdc conversion 2023-03-09 13:24:14 +00:00
baldurk bf2df1d09a Fix recompression of D3D12 files not being roundtrip identical 2023-03-09 13:23:33 +00:00
baldurk 2c2bafa1a6 Add protection on D3D12 for bad internal API calls from python 2023-03-09 13:23:19 +00:00
baldurk e81e00beb3 Environment variable modifications with an empty value are valid 2023-03-08 18:06:46 +00:00
baldurk d36d23ab21 Fix access to reserved columns for tooltips 2023-03-08 16:55:22 +00:00
baldurk e74144670d Special case D3D12 dlls in xml codec as well rather than dumping as hex 2023-03-08 16:55:03 +00:00
baldurk 760bfdcb40 Disable find-as-you-type keyboard searches in buffer viewer
* This will cause the model to evaluate every data item to search it, which is
  the exact thing we're trying to avoid with lazy item views.
2023-03-08 14:06:02 +00:00
Orson Baines fd12fdb84b Set Primitive ID to ~0u in error case 2023-03-07 08:46:46 +00:00
Orson Baines 578c963bb2 Fix a few OpenGL Pixel History Bugs
- Filter out events that affect a mip layer that is not selected
- Fix an off by one replay error causing weird behaviour
- Fix framebuffer blitting when attached textures change during frame
2023-03-07 08:46:46 +00:00
baldurk 4439d50aeb Fix handling of dynamic rendering shading rate attachments. Closes #2877 2023-03-06 15:14:05 +00:00
baldurk 5d90500530 Expand GPU readback of memory to integrated GPUs. Closes #2868
* Integrated GPUs with non-host-cached memory should also be handled with a GPU
  readback, similar to all device-local memory on full GPUs.
2023-03-06 15:14:05 +00:00
baldurk 802199da65 Expand use of -Wno-implicit-fallthrough on 3rdparty sources 2023-03-06 15:14:05 +00:00
baldurk 6cb927d638 Fix race removing forced reference on buffer delete 2023-03-06 15:14:05 +00:00
baldurk 00e8bd7d8b When forcing WARP, force all heaps created to be L0 to comply with rules 2023-03-06 15:14:05 +00:00
baldurk 9a30ca304e Only initialise AMD extensions when replaying on AMD
* The driver module may be loaded but that doesn't mean we should try to
  initialise the extensions.
2023-03-06 15:14:05 +00:00
baldurk 61ef550344 add extra GL extension declare to work around Intel driver issue 2023-03-06 15:14:05 +00:00
baldurk 6a7df564fc Handle secondary command buffers with no inheritance info RP 2023-03-06 15:14:05 +00:00
baldurk 0433795378 Disable another buggy vulkan layer 2023-03-06 15:14:04 +00:00
baldurk 6af4d895d8 Recalculate root if fake markers are present. Closes #2870 2023-03-06 15:14:04 +00:00
John Cortell ac302d7a48 APIProperties serialization missing field
The field APIProperties::rgpCapture was added years ago but
renderdoc_serialize.inl wasn't updated. One of those edge cases
where the size check failed to flag the oversight due to the
field appearing prior to other subsequent (conditional) fields.
End result is that the RGP Capture menu option is always disabled,
even when the target supports it.
2023-03-03 11:24:33 +00:00
Orson Baines c8b011344d Remove feature toggle for OpenGL Pixel History 2023-02-25 10:52:53 +00:00
baldurk 52e9404961 Fix reflection of structure sizes in DXIL 2023-02-22 11:09:09 +00:00
baldurk 9c71e9db02 Speculative fix for race during performance counter selection
* If the window is closed while counter enumeration is happening and that takes
  long enough this might break, so keep a QPointer around.
2023-02-22 10:14:17 +00:00
baldurk f05c4efde8 Tweak and extend handling of DWARF debug metadata 2023-02-16 13:04:04 +00:00
baldurk 9c09f2879c Improve dxc-only disassembly annotations 2023-02-16 13:04:04 +00:00
baldurk 57239207a5 Argument values come before function constant values
* We start counting value IDs for value-less first instructions (like calls)
  starting just from the constants, not including arguments
2023-02-16 13:04:04 +00:00
baldurk 62f4b3cd25 Encode functions with internal linkage correctly 2023-02-16 13:04:04 +00:00
baldurk 35f2ad0658 Use the correct type list for calculating number of types to abbreviate 2023-02-16 13:04:04 +00:00
baldurk e50eab747a Format null pointers as 'null' rather than 'zeroinitializer' 2023-02-16 13:04:04 +00:00
baldurk d1c2fc3a49 Correctly print the type for pointer-to-function
* We implicitly treat function types as just function types, llvm makes them
  into pointer-to-function on load.
2023-02-16 13:04:04 +00:00
baldurk e816e6e39f Tweak some cases disassembling attributes 2023-02-16 13:04:04 +00:00
baldurk 62aa7b49a5 Assign type IDs recursively for constants
* In case a type is only referenced via e.g. bitcast -> gep we need to recurse
  to assign type IDs in this case.
2023-02-16 13:04:04 +00:00
baldurk 5efe9bc0b2 Fix some edge cases on DXIL function disassembly 2023-02-16 13:04:04 +00:00
baldurk cc1709d16c Arguments are allowed to be unnamed in DXIL 2023-02-16 13:04:03 +00:00
baldurk f73a61a294 Handle recursively empty structs in DXIL with no type annotations 2023-02-16 13:04:03 +00:00
baldurk 807a398126 Handle COMDAT entries in DXIL 2023-02-16 13:04:03 +00:00
baldurk 1f80c0643d Silently handle unsupported resources in DXIL reflection if encountered 2023-02-16 13:04:03 +00:00
baldurk 843972395b Display internal linkage functions in disassembly 2023-02-16 13:04:03 +00:00
baldurk 39bb522d93 Match dxc disassembly for partially-undef compounds 2023-02-16 13:04:03 +00:00
baldurk deeb7fe3eb Handle non-void return instructions properly in DXIL 2023-02-16 13:04:03 +00:00
baldurk 953e702e47 DXIL type annotations byte size is unreliable so don't use it
* We also need to be sure not to recurse into 'structs' that are matrices, since
  they don't have type annotation info.
2023-02-16 13:03:38 +00:00
baldurk f5058dc292 32-bit compile fix 2023-02-14 20:36:31 +00:00
baldurk 6abbd83e6a Set callstack on first instruction when debugging DXBC. Closes #2855 2023-02-14 19:36:10 +00:00
baldurk b42a1f9d1d Refactor DXIL parsing and handling to more closely mimic LLVM
* This file format is so obtuse that it enforces a code structure almost by
  design. This makes sense since it was never intended to be used anywhere
  outside of LLVM internals, so it makes sense that it maps precisely to LLVM's
  code structure and is hard to handle otherwise.
2023-02-14 19:36:10 +00:00
Orson Baines 073f3c770a Address PR nitpick feedback 2023-02-14 10:07:07 +00:00