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