7962c81738
[spirv] new castings for int8/int16/etc ( #86 )
...
eden-build / windows (msvc) (push) Waiting to run
eden-build / linux (push) Waiting to run
eden-build / android (push) Waiting to run
eden-build / source (push) Successful in 4m27s
This commit introduces extended support for low-precision integer casting (int8, int16) in the SPIR-V shader generation pipeline, improving compatibility and performance across both Android and PC platforms.
Co-authored-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-on: #86
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
2025-07-23 01:02:10 +02:00
ameerj
97e9f40a52
shader_recompiler/value.h: Remove lingering references to S32
2023-02-04 00:13:47 -05:00
Levi Behunin
2ff6c44168
Move to Clang Format 15
...
Depends on https://github.com/yuzu-emu/build-environments/pull/69
clang-15 primary run
2023-01-29 17:49:42 -07:00
ameerj
382717743a
shader_recompiler: Remove S32 IR type
...
The frontend IR opcodes do not distinguish between signed and unsigned integer types.
Fixes broken shaders when IR validation/graphics debugging is enabled for shaders that used BitCastS32F32
2023-01-25 22:03:15 -05:00
ameerj
8a22e21d6d
value.h: remove recursive include
2022-11-29 18:50:49 -05:00
Feng Chen
bcf6a7c0dd
video_core: Fix SNORM texture buffer emulating error ( #9001 )
2022-11-04 02:39:42 -04:00
Feng Chen
33514a0d94
Revert "shader_recompiler/dead_code_elimination: Add DeadBranchElimination pass"
2022-10-25 12:57:25 +08:00
Morph
2b87305d31
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
6091af472a
dead_code_elimination_pass: Remove unreachable Phi arguments
2022-03-23 17:57:22 -04:00
ReinUsesLisp
50d20bf0e9
shader: Add copy constructor to instructions
2021-11-16 22:11:28 +01:00
Fernando Sahmkow
c9bee9e96e
ShaderCache: Order Phi Arguments from farthest away to nearest.
2021-10-31 19:34:15 +01:00
bunnei
9a7c2869d8
Merge pull request #6722 from ReinUsesLisp/xmad-opts
...
shader: Fold integer FMA from Nvidia's pattern
2021-07-29 18:45:37 -07:00
Lioncash
05201f4f88
shader_recompiler: Remove unnecessary [[nodiscard]] instances
...
[[nodiscard]] doesn't do anything on functions with a void return type
and causes superfluous warnings.
2021-07-26 04:23:59 -04:00
ReinUsesLisp
222a6542ab
shader: Add TryInstRecursive utility to values
2021-07-26 01:31:05 -03:00
ReinUsesLisp
0ca75be20a
Revert "glasm: Skip phi moves on undefined instructions"
...
Causes regressions on Bowser's Fury.
2021-07-22 21:51:33 -04:00
ReinUsesLisp
459e3b17e6
glasm: Skip phi moves on undefined instructions
2021-07-22 21:51:33 -04:00
ReinUsesLisp
f2ae32fa76
glasm: Initial implementation of phi nodes on GLASM
2021-07-22 21:51:31 -04:00
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.
2021-07-22 21:51:31 -04:00
ReinUsesLisp
6c0a696179
glasm: Implement basic GLASM instructions
2021-07-22 21:51:30 -04:00
ReinUsesLisp
d9b9c10f32
glasm: Add GLASM backend infrastructure
2021-07-22 21:51:30 -04:00
ReinUsesLisp
16a869571e
shader: Inline common Value getters
2021-07-22 21:51:28 -04:00
ReinUsesLisp
1a44a5cafa
shader: Use memset to reset instruction arguments
2021-07-22 21:51:28 -04:00
ReinUsesLisp
9edc2bd70f
shader: Inline common Value functions into the header
2021-07-22 21:51:28 -04:00
ReinUsesLisp
6236b611cf
shader: Move microinstruction header to the value header
2021-07-22 21:51:28 -04:00
ReinUsesLisp
38908d0f7e
shader: Implement tessellation shaders, polygon mode and invocation id
2021-07-22 21:51:27 -04:00
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>
2021-07-22 21:51:26 -04:00
ReinUsesLisp
4cd2c1588b
shader: Refactor PTP and other minor changes
2021-07-22 21:51:24 -04:00
FernandoS27
f573d3642e
shader: Implement TLD4.PTP
2021-07-22 21:51:24 -04:00
ameerj
832f1169d6
shader: Implement DADD
2021-07-22 21:51:23 -04:00
ReinUsesLisp
a956d3cdb3
shader: Initial support for textures and TEX
2021-07-22 21:51:23 -04:00
ReinUsesLisp
d0459ab2c2
shader: Fix control flow
2021-07-22 21:51:22 -04:00
ReinUsesLisp
073f346f8c
shader: Add utility to resolve identities on a value
2021-07-22 21:51:22 -04:00
ReinUsesLisp
f5b3324bca
shader: Make typed IR
2021-07-22 21:51:21 -04:00
ReinUsesLisp
37fc39de17
shader: Constant propagation and global memory to storage buffer
2021-07-22 21:51:21 -04:00
ReinUsesLisp
1b576ed4cb
shader: SSA and dominance
2021-07-22 21:51:21 -04:00
ReinUsesLisp
e6892e9da6
shader: Initial recompiler work
2021-07-22 21:51:21 -04:00