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.
4 years ago
Liam
146f1f5ac6
shader_compiler: support const buffer indirect addressing in GLSL
4 years ago
Liam
528cba63b6
shader_recompiler: support const buffer indirect addressing on OpenGL SPIR-V
4 years ago
Billy Laws
ef9b177ecb
Include <bit> header when std::count{r,l}_zero is used
Needed for compilation with older libc++ releases
4 years ago
ameerj
0df188787a
shader_recompiler: Reduce unused includes
4 years ago
Liam
83b1c9de37
Address review comments
4 years ago
Liam
95b9f62686
shader_recompiler: Use functions for indirect const buffer accesses
4 years ago
Liam
f3382e6339
Address review comments
4 years ago
Liam
8515dba789
shader: add support for const buffer indirect addressing
4 years ago
ameerj
048522e98b
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
4 years ago
ameerj
092771e9c8
emit_glsl_atomic: Implement 32x2 fallback atomic ops
4 years ago
ameerj
0c5e641757
shaders: Add U64->U32x2 Atomic fallback functions
4 years ago
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
4 years ago
ameerj
712b7883be
emit_spirv: Add Xfb execution mode when transform feedback is used
Fixes Transform Feedback on Vulkan AMD drivers.
4 years ago
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.
4 years ago
liushuyu
479d57987c
logging/log.h: move enum class formatter to a separate file ...
... to common/logging/formatter.h
4 years ago
liushuyu
682ea0f431
logging: adapt to changes in fmt 8.1
4 years ago
Narr the Reg
0646512a9c
glsl: Remove unreachable return
4 years ago
ameerj
c5c13369fa
glsl: Add boolean reference workaround
4 years ago
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.
4 years ago
ameerj
0918d673a3
emit_glsl_integer: Use negation work around
4 years ago
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.
4 years ago
Matías Locatti
244dff4e6e
Empty spaces
4 years ago
Matías Locatti
1a30c0a125
Changes to avoid warnings in SSE4.2 optimized SPIR-V
4 years ago
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
4 years ago
ameerj
fbb33df96f
emit_glsl_floating_point: Fix FPNeg on newer Nvidia drivers
4 years ago
vonchenplus
8ea541bc11
Remove spirv handle legacy related code
4 years ago
vonchenplus
ac51211ce4
Remove glsl handle legacy related code
4 years ago
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.
4 years ago
ameerj
ed5b039980
glasm: Move implemented instructions from not_implemented.cpp
4 years ago
ameerj
efd428c747
shader_recompiler: Adjust emit_context includes
4 years ago
ameerj
c0705ede4d
shader_recompiler: Rename backend emit_context files
4 years ago
ameerj
d644a3780c
vulkan: Fix rescaling push constant usage
5 years ago
ameerj
02f27b1992
shader, video_core: Fix GCC build errors
5 years ago
ameerj
92bb068ad5
emit_spirv: Fix RescalingLayout alignment
5 years ago
ameerj
a8a021ddcf
emit_spirv: Fix RescalingLayout alignment
5 years ago
ReinUsesLisp
d04e2dac6c
shader: Properly scale image reads and add GL SPIR-V support
Thanks for everything!
5 years ago
ReinUsesLisp
0d12e498ab
glsl/glasm: Pass and use scaling parameters in shaders
5 years ago
ameerj
b83c3e7182
gl_graphics_pipeline: Add downscale factor to shader uniforms
5 years ago
ReinUsesLisp
e63fc7a4bb
spirv: Implement rescaling patching
5 years ago
ReinUsesLisp
7f88938d72
shader: Add IsTextureScaled opcode
5 years ago
ReinUsesLisp
8cfa8cda16
shader: Add integer division opcodes
5 years ago
ReinUsesLisp
47d1d881cf
shader: Add resolution down factor opcode
5 years ago
Feng Chen
c047b66519
Simply legacy attribute implement
4 years ago
Fernando Sahmkow
a354c3ae82
Shader Cahe: Fix Phi Nodes on GLASM.
4 years ago
Fernando Sahmkow
6f94c9a9fe
ShaderCache: Fix Phi Nodes Type on OGL.
4 years ago
vonchenplus
64a9dffd3d
Support gl_FogFragCoord attribute
4 years ago
vonchenplus
1c917c6905
Support gl_BackSecondaryColor attribute
4 years ago
vonchenplus
9cd198ede9
Support gl_FrontSecondaryColor attribute
4 years ago
vonchenplus
b4301281d5
Support gl_BackColor attribute
4 years ago