* Implement shader resource tables
* fix after rebase + squash
* address some review comments
* fix pipeline_common
* cleanup debug stuff
* switch to using single codegenerator
* Add shader debug print opcode that uses NonSemantic DebugPrintf extension
* small correction for flags in Inst
* Fix IR Debug Print. Add StringLiteral op
* add missing microinstruction changes for debugprint
* cleanup. delete vaarg stuff. Smuggle format string in Info and flags
* more cleanup
* more
* (dont merge??) update sirit submodule
* fix num args 4 -> 5
* add notes about DebugPrint IR op
* use NumArgsOf again
* copyright
* update sirit submodule
* fix clangformat
* add new Value variant for string literal. Use arg0 for fmt string
* remove string pool changes
* Update src/shader_recompiler/ir/value.cpp
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
---------
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
* shader_recompiler: Use push constants for user data regs
* shader: Add some GR2 instructions
* shader: Add some instructions
* shader: Add instructions for knack
* touchups
* spirv: Better names
* buffer_cache: Ignore non gpu modified images
* clang format
* Add log
* more fixes
* video_core: texture: image subresources state tracking
* shader_recompiler: use one binding if the same image is read and written
* video_core: added rebinding of changed textures after overlap resolve
* don't use pointers; slight `FindTexture` refactoring
* video_core: buffer_cache: don't copy over the image size
* redundant barriers removed; fixes
* regression fixes
* texture_cache: 3d texture layers count fixup
* shader_recompiler: support for partially bound cubemaps
* added support for cubemap arrays
* don't bind unused color buffers
* fixed depth promotion to do not use stencil
* doors
* bonfire lit
* cubemap array index calculation
* final touches
* shader_recompiler: Add more format swap modes
* texture_cache: Handle stencil texture reads
* emulator: Support loading font library
* readme: Add thanks section
* shader_recompiler: Constant buffers as integers
* shader_recompiler: Typed buffers as integers
* shader_recompiler: Separate thread bit scalars
* We can assume guest shader never mixes them with normal sgprs. This helps avoid errors where ssa could view an sgpr write dominating a thread bit read, due to how control flow is structurized, even though its not possible in actual control flow
* shader_recompiler: Implement data append/consume operations
* clang format
* buffer_cache: Simplify invalidation scheme
* video_core: Remove some invalidation remnants
* adjust
* shader_recompiler: Use null image when shader is compiled with unbound sharp
* video_core: Refactor and render target swizzles
* liverpool_to_vk: Add missing swap format from RDR
* video_core: Refactor shader recompiler interface
* Makes it much easier to pass runtime information to the recompiler and have it treated as part of the shader key. Also pulls out most runtime state from Info struct
* shader_recompiler: Avoid some asserts