Commit Graph

91 Commits

Author SHA1 Message Date
9a95c7fa14 video_core: Generate mipmap texture by drawing 2022-09-20 11:55:43 +08:00
99ceb03a1c 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
e8c50e709e emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors 2022-03-12 02:54:33 -05:00
7105204a7e 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
f32b2bcd20 shader_recompiler: Adjust emit_context includes 2021-12-05 18:11:19 -05:00
618de4e787 vulkan: Fix rescaling push constant usage 2021-11-16 22:11:31 +01:00
65781f88f8 emit_spirv: Fix RescalingLayout alignment 2021-11-16 22:11:29 +01:00
dc28284437 emit_spirv: Fix RescalingLayout alignment 2021-11-16 22:11:29 +01:00
e66d5b88a6 shader: Properly scale image reads and add GL SPIR-V support
Thanks for everything!
2021-11-16 22:11:29 +01:00
656adee630 spirv: Implement rescaling patching 2021-11-16 22:11:28 +01:00
9e7b6622c2 shader: Split profile and runtime information in separate structs 2021-07-22 21:51:33 -04:00
bed090807a Move SPIR-V emission functions to their own header 2021-07-22 21:51:30 -04:00
7ecc6de56a shader: Implement Int32 SUATOM/SURED 2021-07-22 21:51:30 -04:00
48a17298d7 spirv: Support OpenGL uniform buffers and change bindings 2021-07-22 21:51:29 -04:00
b541f5e5e3 shader: Implement VertexA stage 2021-07-22 21:51:29 -04:00
050e81500c shader: Move microinstruction header to the value header 2021-07-22 21:51:28 -04:00
7018e524f5 shader: Add NVN storage buffer fallbacks
When we can't track the SSBO origin of a global memory instruction,
leave it as a global memory operation and assume these pointers are in
the NVN storage buffer slots, then apply a linear search in the shader's
runtime.
2021-07-22 21:51:28 -04:00
080857b60e shader: Add coarse derivatives 2021-07-22 21:51:28 -04:00
04c459fc8d shader: Implement fine derivates constant propagation 2021-07-22 21:51:28 -04:00
f18a6dd1bd shader: Implement SR_Y_DIRECTION 2021-07-22 21:51:28 -04:00
0a0818c025 shader: Fix memory barriers 2021-07-22 21:51:28 -04:00
dbbd4b5496 spirv: Use ConstOffset instead of Offset when possible 2021-07-22 21:51:28 -04:00
80940b1706 shader: Implement SampleMask 2021-07-22 21:51:28 -04:00
95815a3883 shader: Implement PIXLD.MY_INDEX 2021-07-22 21:51:28 -04:00
183855e396 shader: Implement tessellation shaders, polygon mode and invocation id 2021-07-22 21:51:27 -04:00
fa75b9b062 spirv: Rework storage buffers and shader memory 2021-07-22 21:51:27 -04:00
f263760c5a shader: Implement geometry shaders 2021-07-22 21:51:27 -04:00
a6cef71cc0 shader: Implement OUT 2021-07-22 21:51:27 -04:00
2ed80f6b1e shader: Implement LOP CC 2021-07-22 21:51:27 -04:00
5c61e860e4 shader: Implement SR_THREAD_KILL 2021-07-22 21:51:27 -04:00
3db2b3effa shader: Implement ATOM/S and RED 2021-07-22 21:51:27 -04:00
9280cd649a shader: Move LaneId to the warp emission file and fix AMD 2021-07-22 21:51:27 -04:00
7cb2ab3585 shader: Implement SULD and SUST 2021-07-22 21:51:26 -04:00
1d51803169 shader: Implement indexed attributes 2021-07-22 21:51:26 -04:00
da6cf2632c shader: Add subgroup masks 2021-07-22 21:51:26 -04:00
fc93bc2abd shader: Implement BAR and fix memory barriers 2021-07-22 21:51:26 -04:00
3f594dd86b shader: Reimplement GetCbufU64 as GetCbufU32x2
It may generate better code on some compilers and it's easier to handle.
2021-07-22 21:51:26 -04:00
baec84247f shader: Address Feedback 2021-07-22 21:51:26 -04:00
45d547af11 shader: Implement SR_LaneId 2021-07-22 21:51:26 -04:00
655f7a570a shader: Implement MEMBAR 2021-07-22 21:51:26 -04:00
ecb30c9072 shader: Improve VOTE.VTG stub 2021-07-22 21:51:25 -04:00
d5bfc63088 shader: Implement ImageGradient 2021-07-22 21:51:25 -04:00
613b48c4a2 shader,spirv: Implement ImageQueryLod. 2021-07-22 21:51:25 -04:00
6c51f49632 shader: Implement FSWZADD 2021-07-22 21:51:25 -04:00
34aba9627a shader: Implement BRX 2021-07-22 21:51:25 -04:00
73af0d2e0d shader: Implement I2I CC 2021-07-22 21:51:25 -04:00
dbc1e5cde7 shader: Implement I2I SAT 2021-07-22 21:51:25 -04:00
e860870dd2 shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available 2021-07-22 21:51:25 -04:00
675a82416d spirv: Remove dependencies on Environment when generating SPIR-V 2021-07-22 21:51:24 -04:00
17063d16a3 shader: Implement TXQ and fix FragDepth 2021-07-22 21:51:24 -04:00