Fernando Sahmkow
05054d1dc2
Shader decompiler: do constant propgation before texture pass.
4 years ago
vonchenplus
8fe519b656
Address format clang
4 years ago
Feng Chen
dbfa89c40b
Implement convert legacy to generic
4 years ago
ameerj
63465c24e1
rescaling_pass: Logic simplification and minor style cleanup
4 years ago
Fernando Sahmkow
4535feac87
Shader: Don't rescale FragCoord if used by Shuffle
4 years ago
ReinUsesLisp
e63fc7a4bb
spirv: Implement rescaling patching
4 years ago
Fernando Sahmkow
c9bee9e96e
ShaderCache: Order Phi Arguments from farthest away to nearest.
4 years ago
ameerj
e9a8e011f6
structured_control_flow: Conditionally invoke demote reorder pass
This is only needed on select drivers when a fragment shader discards/demotes.
4 years ago
ReinUsesLisp
2321666580
shader: Avoid usage of C++20 ranges to build in clang
5 years ago
ReinUsesLisp
cdb3837085
shader: Manually convert from array<u32> to bitset instead of using bit_cast
5 years ago
ReinUsesLisp
41b2a991c4
shader: Use std::bit_cast instead of Common::BitCast for passthrough
5 years ago
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
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
FernandoS27
be4d1c9b95
shader: Fix VertexA Shaders.
5 years ago
ReinUsesLisp
672930b6c8
shader: Handle host exceptions
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
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
FernandoS27
007a11014c
shader: Optimize NVN Fallthrough
5 years ago
FernandoS27
6aff9b4476
shader: Address feedback
5 years ago
FernandoS27
a2fac91c47
shader: Implement VertexA stage
5 years ago
ReinUsesLisp
1d861a6e90
shader: Remove identity removal pass for better build times
5 years ago
ReinUsesLisp
e54171c1a9
shader: Add NVN storage buffer fallbacks
When we can't track the SSBO origin of a global memory instruction,
leave it as a global memory operation and assume these pointers are in
the NVN storage buffer slots, then apply a linear search in the shader's
runtime.
5 years ago
ReinUsesLisp
38908d0f7e
shader: Implement tessellation shaders, polygon mode and invocation id
5 years ago
ReinUsesLisp
4b32692423
shader: Implement geometry shaders
5 years ago
FernandoS27
1fe6a22cff
shader: Implement indexed attributes
5 years ago
ReinUsesLisp
64372edffb
shader: Fix splits on blocks using indirect branches
5 years ago
ReinUsesLisp
e2d1e21532
shader: Eliminate orphan blocks more efficiently
5 years ago
ReinUsesLisp
6044946495
shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available
5 years ago
ReinUsesLisp
e6b3119910
shader: Better interpolation and disabled attributes support
5 years ago
ReinUsesLisp
96a54aeea8
spirv: Remove dependencies on Environment when generating SPIR-V
5 years ago
ReinUsesLisp
33090a74dd
shader: Add partial rasterizer integration
5 years ago
ReinUsesLisp
db2e9d64aa
shader: Implement CAL inlining function calls
5 years ago
ReinUsesLisp
a956d3cdb3
shader: Initial support for textures and TEX
5 years ago
ReinUsesLisp
16a5b4f494
spirv: Fixes and Intel specific workarounds
5 years ago
ReinUsesLisp
e755a13d06
shader: Rename, implement FADD.SAT and P2R (imm)
5 years ago
ReinUsesLisp
a2fe90fa60
spirv: Add lower fp16 to fp32 pass
5 years ago
ReinUsesLisp
a5f87011d3
shader: Primitive Vulkan integration
5 years ago
ReinUsesLisp
605783f828
spirv: Initial bindings support
5 years ago
ReinUsesLisp
756c643f08
shader: Support SSA loops on IR
5 years ago
ReinUsesLisp
c4d75e4b78
shader: Initial implementation of an AST
5 years ago
ReinUsesLisp
b229ffc0bc
shader: Add pools and rename files
5 years ago
ReinUsesLisp
37fc39de17
shader: Constant propagation and global memory to storage buffer
5 years ago
ReinUsesLisp
f5605b424f
shader: Initial instruction support
5 years ago
ReinUsesLisp
1b576ed4cb
shader: SSA and dominance
5 years ago
ReinUsesLisp
e6892e9da6
shader: Initial recompiler work
5 years ago