Liam
f3382e6339
Address review comments
2022-03-17 09:30:41 -04:00
Liam
8515dba789
shader: add support for const buffer indirect addressing
2022-03-14 19:43:32 -04:00
ameerj
048522e98b
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
2022-03-12 02:54:33 -05:00
ameerj
092771e9c8
emit_glsl_atomic: Implement 32x2 fallback atomic ops
2022-01-29 19:56:03 -05:00
ameerj
0c5e641757
shaders: Add U64->U32x2 Atomic fallback functions
2022-01-29 19:55:53 -05:00
ameerj
c3d768426c
spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomics
...
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used.
Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus
2022-01-28 19:00:04 -05:00
ameerj
712b7883be
emit_spirv: Add Xfb execution mode when transform feedback is used
...
Fixes Transform Feedback on Vulkan AMD drivers.
2022-01-28 16:32:48 -05:00
v1993
970b362ca1
shader_recompiler: fix potential OOB access
...
Found by static analysis with PVS-Studio. Original check wasn't actually checking for OOB and would segfault in case of it.
2022-01-17 21:50:51 +03:00
Narr the Reg
0646512a9c
glsl: Remove unreachable return
2022-01-04 20:23:39 -06:00
Fernando S
8a790b09a7
Merge pull request #7629 from ameerj/nv-driver-fixes
...
shaders: Add fixes for NVIDIA drivers 495+
2022-01-03 00:39:59 +01:00
ameerj
c5c13369fa
glsl: Add boolean reference workaround
2021-12-29 19:03:50 -05:00
ameerj
a57dc3509a
glsl_context_get_set: Add alternative cbuf type for broken drivers
...
some drivers have a bug bitwise converting floating point cbuf values to uint variables. This adds a workaround for these drivers to make all cbufs uint and convert to floating point as needed.
2021-12-29 19:03:50 -05:00
ameerj
0918d673a3
emit_glsl_integer: Use negation work around
2021-12-29 19:03:50 -05:00
ameerj
22a4d26479
shader: Add integer attribute get optimization pass
...
Works around an nvidia driver bug, where casting the integer attributes to float and back to an integer always returned 0.
2021-12-29 19:03:49 -05:00
bunnei
ecc0a7140c
Merge pull request #7618 from goldenx86/patch-4
...
Increase boost requirement to 1.78.0
2021-12-28 16:25:37 -08:00
Matías Locatti
244dff4e6e
Empty spaces
2021-12-28 18:50:51 -03:00
Matías Locatti
1a30c0a125
Changes to avoid warnings in SSE4.2 optimized SPIR-V
2021-12-28 17:35:55 -03:00
ameerj
44832be5d2
emit_glasm_context_get_set: Fix GetAttribute return value type.
...
GetAttribute expects an F32 result type at the IR level, this fixes the return value of attributes which were not returning an F32
2021-12-24 20:45:07 -05:00
ameerj
fbb33df96f
emit_glsl_floating_point: Fix FPNeg on newer Nvidia drivers
2021-12-24 20:03:54 -05:00
vonchenplus
8ea541bc11
Remove spirv handle legacy related code
2021-12-18 14:08:50 +08:00
vonchenplus
ac51211ce4
Remove glsl handle legacy related code
2021-12-18 14:03:40 +08:00
ameerj
3f06a447fb
emit_spirv: Reduce emit_spirv.h include overhead
...
emit_spirv.h is included in video_core, which was propagating further includes that video_core did not depend on.
2021-12-05 18:11:19 -05:00
ameerj
ed5b039980
glasm: Move implemented instructions from not_implemented.cpp
2021-12-05 18:11:19 -05:00
ameerj
efd428c747
shader_recompiler: Adjust emit_context includes
2021-12-05 18:11:19 -05:00
ameerj
c0705ede4d
shader_recompiler: Rename backend emit_context files
2021-12-05 16:33:44 -05:00
ameerj
d644a3780c
vulkan: Fix rescaling push constant usage
2021-11-16 22:11:31 +01:00
ameerj
02f27b1992
shader, video_core: Fix GCC build errors
2021-11-16 22:11:29 +01:00
ameerj
92bb068ad5
emit_spirv: Fix RescalingLayout alignment
2021-11-16 22:11:29 +01:00
ameerj
a8a021ddcf
emit_spirv: Fix RescalingLayout alignment
2021-11-16 22:11:29 +01:00
ReinUsesLisp
d04e2dac6c
shader: Properly scale image reads and add GL SPIR-V support
...
Thanks for everything!
2021-11-16 22:11:29 +01:00
ReinUsesLisp
0d12e498ab
glsl/glasm: Pass and use scaling parameters in shaders
2021-11-16 22:11:29 +01:00
ameerj
b83c3e7182
gl_graphics_pipeline: Add downscale factor to shader uniforms
2021-11-16 22:11:28 +01:00
ReinUsesLisp
e63fc7a4bb
spirv: Implement rescaling patching
2021-11-16 22:11:28 +01:00
ReinUsesLisp
7f88938d72
shader: Add IsTextureScaled opcode
2021-11-16 22:11:28 +01:00
ReinUsesLisp
8cfa8cda16
shader: Add integer division opcodes
2021-11-16 22:11:28 +01:00
ReinUsesLisp
47d1d881cf
shader: Add resolution down factor opcode
2021-11-16 22:11:27 +01:00
bunnei
f6cb4bf018
Merge pull request #7260 from vonchenplus/spirv_support_legacy_attribute_v2
...
shader: Spirv support legacy attribute v2
2021-11-14 02:07:45 -08:00
Feng Chen
c047b66519
Simply legacy attribute implement
2021-11-04 09:26:16 +08:00
bunnei
deaf9af08d
Merge pull request #7262 from FernandoS27/Buffalo-buffalo-Buffalo-buffalo-buffalo
...
ShaderCache: Order Phi Arguments from farthest away to nearest.
2021-11-02 16:34:03 -07:00
Fernando Sahmkow
a354c3ae82
Shader Cahe: Fix Phi Nodes on GLASM.
2021-11-02 00:59:25 +01:00
Fernando Sahmkow
6f94c9a9fe
ShaderCache: Fix Phi Nodes Type on OGL.
2021-11-01 22:26:17 +01:00
vonchenplus
64a9dffd3d
Support gl_FogFragCoord attribute
2021-10-31 23:34:17 +08:00
vonchenplus
1c917c6905
Support gl_BackSecondaryColor attribute
2021-10-26 23:14:40 +08:00
vonchenplus
9cd198ede9
Support gl_FrontSecondaryColor attribute
2021-10-26 23:09:44 +08:00
vonchenplus
b4301281d5
Support gl_BackColor attribute
2021-10-26 23:01:57 +08:00
ameerj
f69d094b14
emit_spirv_image: Fix depth image implicit lod sample in compute
...
Ensures all drivers behave the same way in this case.
2021-10-17 17:09:11 -04:00
Morph
203d8f7f60
style: Remove extra space preceding the :: operator
2021-09-29 01:26:01 -04:00
Fernando Sahmkow
0bd7c14e04
Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan.
2021-09-15 21:30:33 +02:00
Morph
b4d9be4aae
Merge pull request #6948 from ameerj/amd-warp-fix
...
shaders: Fix warp instructions on 64-thread warp devices
2021-09-12 13:53:29 -04:00
bunnei
9a7c619698
Merge pull request #6962 from vonchenplus/spirv_support_legacy_attribute
...
renderer_vulkan: Spirv support glsl legacy attribute
2021-09-08 14:04:44 -07:00