Lander Gallastegi
62b7dc2300
Fix build
2025-04-08 02:35:02 +02:00
Lander Gallastegi
5c736b3edd
Add break conditions to subprogram
2025-04-08 02:35:02 +02:00
Lander Gallastegi
01239233b2
Finish emits
2025-04-08 02:35:02 +02:00
Lander Gallastegi
4ea2ce34bd
Floating point and fixes
2025-04-08 02:35:02 +02:00
Lander Gallastegi
584292f620
Utils, context, convert and ctx get set
2025-04-08 02:35:02 +02:00
Lander Gallastegi
61630c8a4d
Copy context get set
2025-04-08 02:35:02 +02:00
Lander Gallastegi
4f734c60ec
Composite
2025-04-08 02:35:02 +02:00
Lander Gallastegi
1d572c2fb7
Implement some opecodes
2025-04-08 02:35:02 +02:00
Lander Gallastegi
5b70b15396
Better conditions
2025-04-08 02:35:02 +02:00
Lander Gallastegi
a80f7b6a49
x64 backend core and context
2025-04-08 02:35:02 +02:00
Lander Gallastegi
3cbda54ac4
x64 backend base
2025-04-08 02:35:02 +02:00
Lander Gallastegi
86197df491
Flattening pass adjustments
2025-04-08 02:35:02 +02:00
Lander Gallastegi
45972fc28d
clang-format
2025-04-08 02:35:02 +02:00
Lander Gallastegi
3e03873d43
Fixed ImmValue compute
2025-04-08 02:35:02 +02:00
Lander Gallastegi
5d8a170632
Adjust SPIR-V EmitReadConst
2025-04-08 02:35:02 +02:00
Lander Gallastegi
f67ce15321
Fix GCC build
2025-04-08 02:35:02 +02:00
Lander Gallastegi
09335b32cb
Fix TrackSharp
2025-04-08 02:35:02 +02:00
Lander Gallastegi
f8feae9368
Finish IR
2025-04-08 02:34:45 +02:00
Lander Gallastegi
86a95676fc
Num executions
2025-04-08 02:34:26 +02:00
Lander Gallastegi
bfc4881240
clang-format
2025-04-08 02:34:26 +02:00
Lander Gallastegi
5418d80de8
ComputeValue rewrite
2025-04-08 02:34:26 +02:00
Lander Gallastegi
ec8a60672e
Compute value
2025-04-08 02:34:26 +02:00
Lander Gallastegi
81250a64de
Typo
2025-04-08 02:34:26 +02:00
Lander Gallastegi
948c1cd1f1
Operation codes
2025-04-08 02:34:26 +02:00
Lander Gallastegi
22c548b9c7
Use correct types
2025-04-08 02:34:26 +02:00
Lander Gallastegi
a84625a518
Squashed commit of the following:
...
commit 39328be45ed83d252e491b61da5cb4d767ff100d
Author: Lander Gallastegi <landergallastegi@gmail.com>
Date: Tue Mar 11 15:40:44 2025 +0100
Fix trivialy copiable
commit f0633525b343dab7ea75cd7c809c936cb67e572f
Author: Lander Gallastegi <landergallastegi@gmail.com>
Date: Tue Mar 11 00:29:42 2025 +0100
Compute value
commit 8c42a014ee925b61c5ea5721423da3211a635eb8
Author: Lander Gallastegi <landergallastegi@gmail.com>
Date: Tue Mar 11 00:29:31 2025 +0100
Add missing operations
2025-04-08 02:34:26 +02:00
Lander Gallastegi
084f3e1e95
clang-format
2025-04-08 02:34:26 +02:00
Lander Gallastegi
1c16a9bc9a
Better documentation
2025-04-08 02:34:26 +02:00
Lander Gallastegi
7a93230f2e
ImmValue
2025-04-08 02:34:26 +02:00
Lander Gallastegi
5843352c28
Fix subprogram generation
2025-04-08 02:34:26 +02:00
Lander Gallastegi
03d4471c3b
clang-format
2025-04-08 02:34:26 +02:00
Lander Gallastegi
e15bf43e26
Subprogram creation
2025-04-08 02:34:26 +02:00
Lander Gallastegi
6fff3a03db
Usefulness of conditional tree
2025-04-08 02:34:26 +02:00
Lander Gallastegi
4bf9bbf86f
Add conditional tree
2025-04-08 02:34:26 +02:00
Lander Gallastegi
60be1e4376
Fix unreacheable ASL dump
2025-04-08 02:34:26 +02:00
Lander Gallastegi
6465310942
ASL dumping
2025-04-08 02:34:26 +02:00
Lander Gallastegi
38957ba470
Handle non inmediate offset on S_LOAD_DWORD
2025-04-08 02:34:26 +02:00
Lander Gallastegi
d88294a34c
Dump IR program
2025-04-08 02:34:26 +02:00
squidbus
afd0251dd2
shader_recompiler: Use VK_AMD_shader_trinary_minmax when available. ( #2739 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* shader_recompiler: Use VK_AMD_shader_trinary_minmax when available.
* shader_recompiler: Simplify signed/unsigned trinary instruction variants.
2025-04-02 23:36:54 +03:00
Stephen Miller
b0a12c02e1
Add S_SETPRIO to EmitFlowControl ( #2727 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
By squidbus' suggestion, I've added a warning log for this case.
2025-03-31 12:55:14 +03:00
TheTurtle
1f9ac53c28
shader_recompiler: Improve divergence handling and readlane elimintation ( #2667 )
...
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
* control_flow_graph: Improve divergence handling
* recompiler: Simplify optimization passes
Removes a redudant constant propagation and cleans up the passes a little
* ir_passes: Add new readlane elimination pass
The algorithm has grown complex enough where it deserves its own pass. The old implementation could only handle a single phi level properly,
however this one should be able to eliminate vast majority of lane cases remaining. It first performs a traversal of the phi tree to ensure
that all phi sources can be rewritten into an expected value and then performs elimintation by recursively duplicating the phi nodes at each step,
in order to preserve control flow.
* clang format
* control_flow_graph: Remove debug code
2025-03-23 00:35:42 +02:00
TheTurtle
2a05af22e1
emit_spirv: Fix comparison type ( #2658 )
Build and Release / reuse (push) Waiting to run
Build and Release / clang-format (push) Waiting to run
Build and Release / get-info (push) Waiting to run
Build and Release / windows-sdl (push) Blocked by required conditions
Build and Release / windows-qt (push) Blocked by required conditions
Build and Release / macos-sdl (push) Blocked by required conditions
Build and Release / macos-qt (push) Blocked by required conditions
Build and Release / linux-sdl (push) Blocked by required conditions
Build and Release / linux-qt (push) Blocked by required conditions
Build and Release / linux-sdl-gcc (push) Blocked by required conditions
Build and Release / linux-qt-gcc (push) Blocked by required conditions
Build and Release / pre-release (push) Blocked by required conditions
2025-03-19 23:20:00 +02:00
baggins183
c59d5eef45
Specialize vertex attributes on dst_sel ( #2580 )
...
* Specialize vertex attributes on dst_sel
* compare vs attrib specs by default, ignore NumberFmt when vertex input dynamic state is supported
* specialize data_format when attribute uses step rates
* use num_components in data fmt instead of fmt itself
2025-03-02 19:17:11 -08:00
Missake212
a583a9abe0
fixes to get in game ( #2583 )
2025-03-02 22:13:23 +02:00
baggins183
7a4244ac8b
Misc Cleanups ( #2579 )
...
-dont do trivial phi removal during SRT pass, that's now done in
ssa_rewrite
-remove unused variable when walking tess attributes
-fix some tess comments
2025-03-02 21:52:32 +02:00
Missake212
76483f9c7b
opcode implementation test ( #2567 )
2025-03-02 21:31:49 +02:00
Paris Oplopoios
fd3bfdae80
Implement some RDNA flags ( #2510 )
2025-02-24 19:52:57 +02:00
TheTurtle
76b4da6212
video_core: Various small improvements and bug fixes ( #2525 )
...
* ir_passes: Add barrier at end of block too
* vk_platform: Always assign names to resources
* texture_cache: Better overlap handling
* liverpool: Avoid resuming ce_task when its finished
* spirv_quad_rect: Skip default attributes
Fixes some crashes
* memory: Improve buffer size clamping
* liverpool: Relax binary header validity check
* liverpool: Stub SetPredication with a warning
* Better than outright crash
* emit_spirv: Implement round to zero mode
* liverpool: queue::pop takes the front element
* image_info: Remove obsolete assert
The old code assumed the mip only had 1 layer thus a right overlap could not return mip 0. But with the new path we handle images that are both mip-mapped and multi-layer, thus this can happen
* tile_manager: Fix size calculation
* spirv_quad_rect: Skip default attributes
---------
Co-authored-by: poly <47796739+polybiusproxy@users.noreply.github.com>
Co-authored-by: squidbus <175574877+squidbus@users.noreply.github.com>
2025-02-24 14:31:12 +02:00
squidbus
9424047214
shader_recompiler: Proper support for inst-typed buffer format operations. ( #2469 )
2025-02-21 03:01:18 -08:00
¥IGA
8447412c77
Bump to Clang 19 ( #2434 )
2025-02-18 15:55:13 +02:00