ReinUsesLisp
b1df436cef
shader: Rework varyings and implement passthrough geometry shaders
Put all varyings into a single std::bitset with helpers to access it.
Implement passthrough geometry shaders using host's.
5 years ago
ReinUsesLisp
6db3ba6542
shader: Only verify shader when graphics debugging is enabled
5 years ago
ReinUsesLisp
0a75c400e3
shader: Emulate 64-bit integers when not supported
Useful for mobile and Intel Xe devices.
5 years ago
ReinUsesLisp
f158fe9359
shader: Remove IAbs64
5 years ago
ameerj
58a052072c
shader_recompiler: Fix IADD3 input partitioning
5 years ago
ReinUsesLisp
04c1dca457
shader: Move loop safety tests to code emission
5 years ago
ReinUsesLisp
d633ec4ecc
shader: Calibrate loop safety threshold
5 years ago
ReinUsesLisp
16d28031e7
shader: Simplify MergeDualVertexPrograms
5 years ago
ReinUsesLisp
c4a71824d5
shader: Properly manage attributes not written from previous stages
5 years ago
ReinUsesLisp
52be21495e
shader: Add support for native 16-bit floats
5 years ago
ReinUsesLisp
41c634a7a9
shader: Rename maxwell/program.h to translate_program.h
5 years ago
ReinUsesLisp
574a99b9b3
shader: Fix loop safety to SSA pass
5 years ago
ReinUsesLisp
f40daa777e
shader: Add logging
5 years ago
lat9nq
3a70b6c79b
shader: Add shader loop safety check settings
Also add a setting for enable Nsight Aftermath.
5 years ago
ReinUsesLisp
a56f9f4322
shader: Comment why the array component is not read in TMML
5 years ago
ameerj
4c1067ef1c
tmml: Remove index component from coords vec
The lod query functions exposed by the rendering API's do not make use of the texturearray layer indexing.
5 years ago
FernandoS27
be4d1c9b95
shader: Fix VertexA Shaders.
5 years ago
ReinUsesLisp
64dfb4220f
shader: Add 2D and 3D variants to SUATOM and SURED
Used by Claybook.
5 years ago
ReinUsesLisp
1dd4302fac
shader: Avoid CPU side undefined behavior on I2F
5 years ago
ReinUsesLisp
4744a21bd4
shader: Add support for "negative" and unaligned offsets
"Negative" offsets don't exist. They are shown as such due to a bug in
nvdisasm.
Unaligned offsets have been proved to read the aligned offset. For
example, when reading an U32, if the offset is 6, the offset read will
be 4.
5 years ago
ReinUsesLisp
e3aedea124
shader: Implement ISCADD32I
5 years ago
ReinUsesLisp
142d4f3f6e
shader: Always initialize up reference in structure control flow
Fixes ubsan issue.
5 years ago
ReinUsesLisp
6e475617d5
shader: Fix ImageWrite indexing
5 years ago
ReinUsesLisp
8ea552e64e
shader: Fix TMML queries
5 years ago
ReinUsesLisp
672930b6c8
shader: Handle host exceptions
5 years ago
ReinUsesLisp
0ca75be20a
Revert "glasm: Skip phi moves on undefined instructions"
Causes regressions on Bowser's Fury.
5 years ago
ReinUsesLisp
459e3b17e6
glasm: Skip phi moves on undefined instructions
5 years ago
ReinUsesLisp
205bf15e71
video_core,shader: Clang-format fixes
5 years ago
ReinUsesLisp
5c6dc51c69
shader: Read branch conditions from an instruction
Fixes the identity removal pass.
5 years ago
ReinUsesLisp
0b3a3f35e8
glasm: Implement TEX and TEXS instructions
Remove lod clamp from texture instructions with lod, as this is not
needed (nor supported).
5 years ago
lat9nq
69210028b4
shader_recompiler: GCC fixes
Fixes members of unnamed union not being accessible, and one function
without a declaration.
5 years ago
ReinUsesLisp
f2ab3993eb
shader: Use a non-trivial dummy to construct ASL node union
5 years ago
ReinUsesLisp
f2ae32fa76
glasm: Initial implementation of phi nodes on GLASM
5 years ago
ReinUsesLisp
03f6d424ce
glasm: Rework control flow introducing a syntax list
This commit regresses VertexA shaders, their transformation pass has to
be adapted to the new control flow.
5 years ago
ReinUsesLisp
cef625a9b2
shader: Add floating-point rounding to I2F
5 years ago
ReinUsesLisp
6c0a696179
glasm: Implement basic GLASM instructions
5 years ago
ReinUsesLisp
d9b9c10f32
glasm: Add GLASM backend infrastructure
5 years ago
ameerj
a739b6933e
shader: ISET.X implementation
5 years ago
FernandoS27
007a11014c
shader: Optimize NVN Fallthrough
5 years ago
FernandoS27
fb20effc51
shader: Stub SR_AFFINITY
5 years ago
ameerj
455872a4af
shader: Implement Int32 SUATOM/SURED
5 years ago
ReinUsesLisp
5ca5988c63
shader: Initial OpenGL implementation
5 years ago
FernandoS27
6aff9b4476
shader: Address feedback
5 years ago
FernandoS27
a2fac91c47
shader: Implement VertexA stage
5 years ago
FernandoS27
cb0587f841
shader: Implement delegation of Exit to dispatcher on CFG
5 years ago
ameerj
031e91e7e5
shader: Fix IADD3.CC
5 years ago
ReinUsesLisp
c8b0377a67
shader: Fix VMNMX selector B
5 years ago
ReinUsesLisp
1d861a6e90
shader: Remove identity removal pass for better build times
5 years ago
ReinUsesLisp
12d7acf707
shader: Add missing UndoUse case for GetSparseFromOp
5 years ago
ReinUsesLisp
04e042d3b3
shader: Simplify code in opcodes.h to fix Intellisense
Avoid using std::array to fix Intellisense not properly compiling this
code and disabling itself on all files that include it.
While we are at it, change the code to use u8 instead of size_t for the
number of instructions in an opcode.
5 years ago