aboutsummaryrefslogtreecommitdiff
path: root/src/shader_recompiler/frontend/maxwell/control_flow.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Switch 2: Turing macros, native compute, Ampere shader lowering, native tilingTakoroka7 days1-1/+1
| | | | | | | | | | | | | | | | | From changes.patch: the TU104/GA10x MME interpreter (shared macro context for the process's channels, also on the compute class), native compute with QMD 3.0 dependency scheduling, the Ampere-to-Maxwell shader lowering, native vertex stream sizes, and the console's GOB swizzle for textures, DMA copies and the host unswizzle shaders. Switch 2 channels turn all of it on at init. The lowering is widened for title 4 (all 32 of its programs lower): general TEX (any dimension/LOD/mask, operand split 1+1/2+1/2+2/4+n, any but consistent descriptor buffer), cube/array, SULD channel masks, 128-bit STG, indexed IPA, VOTE, SHFL with any immediate or predicate output, R2P/P2R byte select, uniform ULOP3/ULEA/UBREV/UFLO.SH/UISETP signed/UMOV URZ, IMNMX cbuf, IADD3 and FFMA uniform operands, FMUL /4 /8 x8, and BSSY/BSYNC/BREAK/WARPSYNC as no-ops. The capture stops at unmapped memory. EDEN_NX2_SHADER_DUMP dumps every native program; tools in C:\dev\nx2work test the lowering offline.
* [common] remove ranges polyfill (#2546)lizzie2025-09-241-1/+4
| | | | | | | | | Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2546 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* Update fmt to allow for v11crueter2025-04-101-1/+1
| | | Signed-off-by: swurl <swurl@swurl.xyz>
* general: fix compile for Apple ClangLiam2022-11-221-0/+1
|
* general: Convert source file copyright comments over to SPDXMorph2022-04-231-3/+2
| | | | | 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.
* control_flow: Fix duplicate switch case in OpcodeTokenLioncash2021-07-261-1/+1
| | | | This previously duplicated the case of the PBK case above it.
* shader: Avoid usage of C++20 ranges to build in clangReinUsesLisp2021-07-221-7/+6
|
* shader: Address feedbackFernandoS272021-07-221-5/+5
|
* shader: Implement delegation of Exit to dispatcher on CFGFernandoS272021-07-221-2/+39
|
* shader: Address feedback + clang formatlat9nq2021-07-221-2/+2
|
* shader_recompiler,video_core: Cleanup some GCC and Clang errorslat9nq2021-07-221-81/+59
| | | | | | | | | | | | | | | | | 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>
* shader: Fix dangling labelsReinUsesLisp2021-07-221-0/+5
|
* shader: Fix BRX trackingFernandoS272021-07-221-3/+3
|
* shader: Fix splits on blocks using indirect branchesReinUsesLisp2021-07-221-5/+30
|
* shader: Fix branches to visited virtual blocksReinUsesLisp2021-07-221-0/+10
|
* shader: Fix indirect branches to scheduler instructionsReinUsesLisp2021-07-221-3/+6
|
* shader: Implement BRXFernandoS272021-07-221-9/+49
|
* shader: Add partial rasterizer integrationReinUsesLisp2021-07-221-8/+23
|
* shader: Implement CAL inlining function callsReinUsesLisp2021-07-221-40/+38
|
* shader: Fix conditional execution of exit instructionsReinUsesLisp2021-07-221-4/+5
|
* shader: Fix control flowReinUsesLisp2021-07-221-1/+1
|
* shader: Initial implementation of an ASTReinUsesLisp2021-07-221-272/+154
|
* shader: SSA and dominanceReinUsesLisp2021-07-221-6/+124
|
* shader: Initial recompiler workReinUsesLisp2021-07-221-0/+531