Liam 
							
						 
					 
					
						
						
							
						
						52895fab67 
					 
					
						
						
							
							shader: add support for const buffer indirect addressing  
						
						
						
						
					 
					
						2022-03-14 19:43:32 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando S 
							
						 
					 
					
						
						
							
						
						cd07a43724 
					 
					
						
						
							
							Merge pull request  #8008  from ameerj/rescale-offsets-array  
						
						... 
						
						
						
						rescaling_pass: Fix rescaling Color2DArray ImageFetch offsets 
						
						
					 
					
						2022-03-15 00:08:22 +01:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
							
						
						185fc03c3c 
					 
					
						
						
							
							Shader decompiler: do constant propgation before texture pass.  
						
						
						
						
					 
					
						2022-03-13 21:49:40 +01:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
							
						
						ec9f0f064e 
					 
					
						
						
							
							Shader decompiler: Fix storage tracking in deko3d.  
						
						
						
						
					 
					
						2022-03-13 17:41:16 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						f87f8d4610 
					 
					
						
						
							
							rescaling_pass: Fix rescaling Color2DArray ImageFetch offsets  
						
						... 
						
						
						
						ImageFetch offsets for 2D array coordinates have a different composite size than the coordinates. The rescaling pass was not taking this into account.
Fixes broken shaders when scaling is enabled in Astral Chain, and likely other titles. 
						
						
					 
					
						2022-03-12 03:31:56 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						e8c50e709e 
					 
					
						
						
							
							emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors  
						
						
						
						
					 
					
						2022-03-12 02:54:33 -05:00 
						 
				 
			
				
					
						
							
							
								Markus Wick 
							
						 
					 
					
						
						
							
						
						c78c8190d5 
					 
					
						
						
							
							shader_recompiler/LOP3: Use brute force python results within switch/case.  
						
						... 
						
						
						
						Thanks to @asLody for optimizing this function. This raised the focus that this function should be optimized more.
The current table assumes that the host GPU is able to invert for free, so only AND,OR,XOR are accumulated in the performance metrik.
Performance results:
Instructions
0: 8
1: 30
2: 114
3: 80
4: 24
Latency
0: 8
1: 30
2: 194
3: 24 
						
						
					 
					
						2022-03-08 09:44:28 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						e394e1ecc4 
					 
					
						
						
							
							emit_glsl_atomic: Implement 32x2 fallback atomic ops  
						
						
						
						
					 
					
						2022-01-29 19:56:03 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						90a0506d56 
					 
					
						
						
							
							lower_int64_to_int32: Add 64-bit atomic fallbacks  
						
						
						
						
					 
					
						2022-01-29 19:56:02 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						ad58d7eae7 
					 
					
						
						
							
							shaders: Add U64->U32x2 Atomic fallback functions  
						
						
						
						
					 
					
						2022-01-29 19:55:53 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						4790ba7839 
					 
					
						
						
							
							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 
						 
				 
			
				
					
						
							
							
								Morph 
							
						 
					 
					
						
						
							
						
						8dea7fa129 
					 
					
						
						
							
							Merge pull request  #7786  from ameerj/vmnmx-sel  
						
						... 
						
						
						
						video_minimum_maximum: Implement src operand selectors 
						
						
					 
					
						2022-01-28 18:24:56 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						beaf7654bb 
					 
					
						
						
							
							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 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						74e6e3623f 
					 
					
						
						
							
							video_minimum_maximum: Implement src operand selectors  
						
						... 
						
						
						
						Used by Pokemon Legends: Arceus 
						
						
					 
					
						2022-01-27 14:55:08 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						b46ec4efea 
					 
					
						
						
							
							shader_recompiler: Remove unnecessary [[nodiscard]]  
						
						... 
						
						
						
						Since ConvertLegacyToGeneric has a void return value, there's nothing
that is actually returned by the function. 
						
						
					 
					
						2022-01-25 12:16:09 -05:00 
						 
				 
			
				
					
						
							
							
								v1993 
							
						 
					 
					
						
						
							
						
						a943600019 
					 
					
						
						
							
							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 
						 
				 
			
				
					
						
							
							
								liushuyu 
							
						 
					 
					
						
						
							
						
						09f4f3f23b 
					 
					
						
						
							
							logging/log.h: move enum class formatter to a separate file ...  
						
						... 
						
						
						
						... to common/logging/formatter.h 
						
						
					 
					
						2022-01-09 17:35:33 -07:00 
						 
				 
			
				
					
						
							
							
								liushuyu 
							
						 
					 
					
						
						
							
						
						42f653ab6f 
					 
					
						
						
							
							logging: adapt to changes in fmt 8.1  
						
						
						
						
					 
					
						2022-01-08 01:49:26 -07:00 
						 
				 
			
				
					
						
							
							
								Narr the Reg 
							
						 
					 
					
						
						
							
						
						524674aafc 
					 
					
						
						
							
							glsl: Remove unreachable return  
						
						
						
						
					 
					
						2022-01-04 20:23:39 -06:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
							
						
						f58ee3f15f 
					 
					
						
						
							
							ShaderDecompiler: Add a debug option to dump the game's shaders.  
						
						
						
						
					 
					
						2022-01-04 02:39:00 +01:00 
						 
				 
			
				
					
						
							
							
								Fernando S 
							
						 
					 
					
						
						
							
						
						ae7da0b12d 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
							
						
						8c907c620d 
					 
					
						
						
							
							glsl: Add boolean reference workaround  
						
						
						
						
					 
					
						2021-12-29 19:03:50 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						b84d429c2e 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
							
						
						9f34be5a61 
					 
					
						
						
							
							emit_glsl_integer: Use negation work around  
						
						
						
						
					 
					
						2021-12-29 19:03:50 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						14ac0c2923 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
							
						
						279c7bcc1a 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
							
						
						c7235e67ef 
					 
					
						
						
							
							Empty spaces  
						
						
						
						
					 
					
						2021-12-28 18:50:51 -03:00 
						 
				 
			
				
					
						
							
							
								Matías Locatti 
							
						 
					 
					
						
						
							
						
						840d5520d2 
					 
					
						
						
							
							Changes to avoid warnings in SSE4.2 optimized SPIR-V  
						
						
						
						
					 
					
						2021-12-28 17:35:55 -03:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						37addf7a94 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
							
						
						640fc1418b 
					 
					
						
						
							
							emit_glsl_floating_point: Fix FPNeg on newer Nvidia drivers  
						
						
						
						
					 
					
						2021-12-24 20:03:54 -05:00 
						 
				 
			
				
					
						
							
							
								vonchenplus 
							
						 
					 
					
						
						
							
						
						4908a07c20 
					 
					
						
						
							
							Address format clang  
						
						
						
						
					 
					
						2021-12-18 14:27:07 +08:00 
						 
				 
			
				
					
						
							
							
								vonchenplus 
							
						 
					 
					
						
						
							
						
						6ebc972c2b 
					 
					
						
						
							
							Remove spirv handle legacy related code  
						
						
						
						
					 
					
						2021-12-18 14:08:50 +08:00 
						 
				 
			
				
					
						
							
							
								vonchenplus 
							
						 
					 
					
						
						
							
						
						94652e122d 
					 
					
						
						
							
							Remove glsl handle legacy related code  
						
						
						
						
					 
					
						2021-12-18 14:03:40 +08:00 
						 
				 
			
				
					
						
							
							
								Feng Chen 
							
						 
					 
					
						
						
							
						
						e49184e606 
					 
					
						
						
							
							Merge branch 'yuzu-emu:master' into convert_legacy  
						
						
						
						
					 
					
						2021-12-18 13:57:14 +08:00 
						 
				 
			
				
					
						
							
							
								Mai M 
							
						 
					 
					
						
						
							
						
						edbde7a220 
					 
					
						
						
							
							Merge pull request  #7522  from ameerj/shader-recompiler-filenames  
						
						... 
						
						
						
						shader_recompiler/backend: Minor organization and refactoring to reduce compile time overhead 
						
						
					 
					
						2021-12-07 18:27:50 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						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 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						1e1f7b3234 
					 
					
						
						
							
							glasm: Move implemented instructions from not_implemented.cpp  
						
						
						
						
					 
					
						2021-12-05 18:11:19 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						f32b2bcd20 
					 
					
						
						
							
							shader_recompiler: Adjust emit_context includes  
						
						
						
						
					 
					
						2021-12-05 18:11:19 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						5286a7bc4c 
					 
					
						
						
							
							shader_recompiler: Rename backend emit_context files  
						
						
						
						
					 
					
						2021-12-05 16:33:44 -05:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						41aec2773f 
					 
					
						
						
							
							general: Add missing copyright notices  
						
						
						
						
					 
					
						2021-12-05 16:18:53 -05:00 
						 
				 
			
				
					
						
							
							
								Feng Chen 
							
						 
					 
					
						
						
							
						
						4dd85f86a8 
					 
					
						
						
							
							Implement convert legacy to generic  
						
						
						
						
					 
					
						2021-11-19 22:53:58 +08:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
							
						
						6f98690963 
					 
					
						
						
							
							ShaderCache: Better fix for Shuffling gl_FragCoord  
						
						
						
						
					 
					
						2021-11-16 22:11:33 +01:00 
						 
				 
			
				
					
						
							
							
								FernandoS27 
							
						 
					 
					
						
						
							
						
						de1c8c5c2c 
					 
					
						
						
							
							Texture Cahe/Shader decompiler: Resize PointSize on rescaling, refactor and make reaper more agressive on 4Gb GPUs.  
						
						
						
						
					 
					
						2021-11-16 22:11:33 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						618de4e787 
					 
					
						
						
							
							vulkan: Fix rescaling push constant usage  
						
						
						
						
					 
					
						2021-11-16 22:11:31 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						581ea90062 
					 
					
						
						
							
							rescaling_pass: Fix IR errors when unscalable texture types are encountered  
						
						
						
						
					 
					
						2021-11-16 22:11:30 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						99eec162da 
					 
					
						
						
							
							rescaling_pass: Logic simplification and minor style cleanup  
						
						
						
						
					 
					
						2021-11-16 22:11:30 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						276565973f 
					 
					
						
						
							
							rescaling_pass: Scale ImageFetch offset if it exists  
						
						... 
						
						
						
						Plus some code deduplication 
						
						
					 
					
						2021-11-16 22:11:30 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						dd66384451 
					 
					
						
						
							
							rescaling_pass: Enable PatchImageQueryDimensions on fragment stages  
						
						
						
						
					 
					
						2021-11-16 22:11:30 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						b027fac794 
					 
					
						
						
							
							gl_texture_cache/rescaling_pass: minor cleanup  
						
						
						
						
					 
					
						2021-11-16 22:11:30 +01:00 
						 
				 
			
				
					
						
							
							
								ameerj 
							
						 
					 
					
						
						
							
						
						edb5844240 
					 
					
						
						
							
							rescaling_pass: Fix and simplify shuffle/fragcoord pass  
						
						
						
						
					 
					
						2021-11-16 22:11:30 +01:00