ReinUsesLisp
574a99b9b3
shader: Fix loop safety to SSA pass
5 years ago
lat9nq
3a70b6c79b
shader: Add shader loop safety check settings
Also add a setting for enable Nsight Aftermath.
5 years ago
ReinUsesLisp
142d4f3f6e
shader: Always initialize up reference in structure control flow
Fixes ubsan issue.
5 years ago
ReinUsesLisp
5c6dc51c69
shader: Read branch conditions from an instruction
Fixes the identity removal pass.
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
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
172942911a
shader: Fix gcc warnings
5 years ago
ReinUsesLisp
3c1229a7c5
shader: Improve goto removal algorithm complexity
Find sibling node containing a nephew searching from the nephew itself
instead of the uncle.
5 years ago
ReinUsesLisp
7769517fc0
shader: Move siblings check to a separate function and comment them out
5 years ago
ReinUsesLisp
31835567f2
shader: Mark blocks with no end branch as unreachable
5 years ago
lat9nq
a4e7a41e7f
shader_recompiler,video_core: Cleanup some GCC and Clang errors
Mostly fixing unused *, implicit conversion, braced scalar init,
fpermissive, and some others.
Some Clang errors likely remain in video_core, and std::ranges is still
a pertinent issue in shader_recompiler
shader_recompiler: cmake: Force bracket depth to 1024 on Clang
Increases the maximum fold expression depth
thread_worker: Include condition_variable
Don't use list initializers in control flow
Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc>
5 years ago
ReinUsesLisp
876dd94b57
shader: Fix indirect branches to scheduler instructions
5 years ago
FernandoS27
bf9d512e17
shader: Implement BRX
5 years ago
ReinUsesLisp
0b338e3102
shader: Fix structured control flow on KIL instructions
This could potentially leave unvisited blocks, leading to illegal phi
nodes.
5 years ago
ReinUsesLisp
1688302a0d
shader: Properly insert Prologue instruction
5 years ago
ReinUsesLisp
24bc872af3
shader: Implement NDC [-1, 1], attribute types and default varying initialization
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
d0459ab2c2
shader: Fix control flow
5 years ago
ReinUsesLisp
16a5b4f494
spirv: Fixes and Intel specific workarounds
5 years ago
ReinUsesLisp
dc384d68ac
shader: Improve object pool
5 years ago
ReinUsesLisp
c4d75e4b78
shader: Initial implementation of an AST
5 years ago