165bce3c2d
Revert "shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass"
2022-10-25 12:57:25 +08:00
99ceb03a1c
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
67159e3be7
dead_code_elimination_pass: Remove unreachable Phi arguments
2022-03-23 17:57:22 -04:00
ad58d7eae7
shaders: Add U64->U32x2 Atomic fallback functions
2022-01-29 19:55:53 -05:00
c892359d1b
shader: Add copy constructor to instructions
2021-11-16 22:11:28 +01:00
194579bc4f
ShaderCache: Fix Phi Nodes Type on OGL.
2021-11-01 22:26:17 +01:00
c50ad56bf5
ShaderCache: Order Phi Arguments from farthest away to nearest.
2021-10-31 19:34:15 +01:00
9bb3e008c9
shader: Read branch conditions from an instruction
...
Fixes the identity removal pass.
2021-07-22 21:51:32 -04:00
bf5e48ffe4
glasm: Initial implementation of phi nodes on GLASM
2021-07-22 21:51:31 -04:00
d54d7de40e
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.
2021-07-22 21:51:31 -04:00
7ecc6de56a
shader: Implement Int32 SUATOM/SURED
2021-07-22 21:51:30 -04:00
b541f5e5e3
shader: Implement VertexA stage
2021-07-22 21:51:29 -04:00
aece958c2b
shader: Add missing UndoUse case for GetSparseFromOp
2021-07-22 21:51:29 -04:00
c8f9772d65
shader: Fix gcc warnings
2021-07-22 21:51:28 -04:00
f66851e376
shader: Use memset to reset instruction arguments
2021-07-22 21:51:28 -04:00
050e81500c
shader: Move microinstruction header to the value header
2021-07-22 21:51:28 -04:00
6944cabb89
shader: Inline common Opcode and Inst functions
2021-07-22 21:51:28 -04:00
50f8007172
shader: Fix Phi node types
2021-07-22 21:51:28 -04:00
0a0818c025
shader: Fix memory barriers
2021-07-22 21:51:28 -04:00
80940b1706
shader: Implement SampleMask
2021-07-22 21:51:28 -04:00
183855e396
shader: Implement tessellation shaders, polygon mode and invocation id
2021-07-22 21:51:27 -04:00
a6cef71cc0
shader: Implement OUT
2021-07-22 21:51:27 -04:00
3db2b3effa
shader: Implement ATOM/S and RED
2021-07-22 21:51:27 -04:00
d404b871d5
shader: Mark ImageWrite with side effects
2021-07-22 21:51:27 -04:00
0bb85f6a75
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 >
2021-07-22 21:51:26 -04:00
fc93bc2abd
shader: Implement BAR and fix memory barriers
2021-07-22 21:51:26 -04:00
514a6b07ee
shader: Store type of phi nodes in flags
...
This is needed because pseudo-instructions where invalidated.
2021-07-22 21:51:25 -04:00
34aba9627a
shader: Implement BRX
2021-07-22 21:51:25 -04:00
e860870dd2
shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available
2021-07-22 21:51:25 -04:00
32c5483beb
shader: Implement SHFL
2021-07-22 21:51:24 -04:00
68a9505d8a
shader: Implement NDC [-1, 1], attribute types and default varying initialization
2021-07-22 21:51:24 -04:00
260743f371
shader: Add partial rasterizer integration
2021-07-22 21:51:23 -04:00
8dd0acfaeb
shader: Fix instruction transitions in and out of Phi
2021-07-22 21:51:23 -04:00
ab46371247
shader: Initial support for textures and TEX
2021-07-22 21:51:23 -04:00
6db69990da
spirv: Add lower fp16 to fp32 pass
2021-07-22 21:51:22 -04:00
1b0cf2309c
shader: Add support for forward declarations
2021-07-22 21:51:22 -04:00
8af9297f09
shader: Misc fixes
2021-07-22 21:51:22 -04:00
9170200a11
shader: Initial implementation of an AST
2021-07-22 21:51:22 -04:00
da8096e6e3
shader: Properly store phi on Inst
2021-07-22 21:51:21 -04:00
e81739493a
shader: Constant propagation and global memory to storage buffer
2021-07-22 21:51:21 -04:00
6c4cc0cd06
shader: SSA and dominance
2021-07-22 21:51:21 -04:00
2d48a7b4d0
shader: Initial recompiler work
2021-07-22 21:51:21 -04:00