ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							e895a4e2d7 
							
						 
					 
					
						
						
							
							shader/arithmetic_integer: Fix edge case and mark IADD.X Rd.CC as unimplemented  
						
						... 
						
						
						
						IADD.X Rd.CC requires some extra logic that is not currently
implemented. Abort when this is hit. 
						
						
					 
					
						2020-04-25 22:58:33 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							2a96bea6a7 
							
						 
					 
					
						
						
							
							shader/arithmetic_integer: Change IAdd to UAdd to avoid signed overflow  
						
						... 
						
						
						
						Signed integer addition overflow might be undefined behavior. It's free
to change operations to UAdd and use unsigned integers to avoid
potential bugs. 
						
						
					 
					
						2020-04-25 22:57:54 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							c788f9c0bd 
							
						 
					 
					
						
						
							
							shader/arithmetic_integer: Implement IADD.X  
						
						... 
						
						
						
						IADD.X takes the carry flag and adds it to the result. This is generally
used to emulate 64-bit operations with 32-bit registers. 
						
						
					 
					
						2020-04-25 22:56:11 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							255197e643 
							
						 
					 
					
						
						
							
							shader/arithmetic_integer: Implement CC for IADD  
						
						
						
						
					 
					
						2020-04-25 22:55:26 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							ffc5ec6fa8 
							
						 
					 
					
						
						
							
							decode/register_set_predicate: Implement CC  
						
						... 
						
						
						
						P2R CC takes the state of condition codes and puts them into a register.
We already have this implemented for PR (predicates). This commit
implements CC over that. 
						
						
					 
					
						2020-04-25 22:54:42 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							d523734266 
							
						 
					 
					
						
						
							
							decode/register_set_predicate: Use move for shared pointers  
						
						... 
						
						
						
						Avoid atomic counters used by shared pointers. 
						
						
					 
					
						2020-04-25 22:54:14 -03:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c5bf693882 
							
						 
					 
					
						
						
							
							Merge pull request  #3721  from ReinUsesLisp/sort-devices  
						
						... 
						
						
						
						vulkan/wrapper: Sort physical devices 
						
						
					 
					
						2020-04-25 03:27:40 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4e37825dab 
							
						 
					 
					
						
						
							
							Merge pull request  #3734  from ReinUsesLisp/half-float-mods  
						
						... 
						
						
						
						decode/arithmetic_half: Fix HADD2 and HMUL2 absolute and negation bits 
						
						
					 
					
						2020-04-25 00:41:43 -04:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							527a1574c3 
							
						 
					 
					
						
						
							
							vk_rasterizer: Pack texceptions and color formats on invalid formats  
						
						... 
						
						
						
						Sometimes for unknown reasons NVN games can bind a render target format
of 0. This may be a yuzu bug.
With the commits before this the formats were specified without being
"packed", assuming all formats and texceptions will be written like in
the color_attachments vector.
To address this issue, iterate all render targets and pack them as they
are valid. This way they will match color_attachments.
- Fixes validation errors and graphical issues on Breath of the Wild. 
						
						
					 
					
						2020-04-24 22:21:29 -03:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7c8acb0025 
							
						 
					 
					
						
						
							
							Merge pull request  #3749  from ReinUsesLisp/lea-imm  
						
						... 
						
						
						
						shader/arithmetic_integer: Fix LEA_IMM encoding 
						
						
					 
					
						2020-04-24 14:30:13 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							d8a961cd6c 
							
						 
					 
					
						
						
							
							Revert: shader_decode: Fix LD, LDG when track constant buffer.  
						
						
						
						
					 
					
						2020-04-24 11:00:54 -04:00 
						 
				 
			
				
					
						
							
							
								Markus Wick 
							
						 
					 
					
						
						
						
						
							
						
						
							e717a1df20 
							
						 
					 
					
						
						
							
							Fix -Wdeprecated-copy warning.  
						
						
						
						
					 
					
						2020-04-24 09:33:04 +02:00 
						 
				 
			
				
					
						
							
							
								Markus Wick 
							
						 
					 
					
						
						
						
						
							
						
						
							c499c22cf7 
							
						 
					 
					
						
						
							
							Fix -Werror=conversion error.  
						
						
						
						
					 
					
						2020-04-24 09:33:04 +02:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							dbaebd8582 
							
						 
					 
					
						
						
							
							decode/arithmetic_half: Fix HADD2 and HMUL2 absolute and negation bits  
						
						... 
						
						
						
						The encoding for negation and absolute value was wrong.
Extracting is now done manually. Similar instructions having different
encodings is the rule, not the exception. To keep sanity and readability
I preferred to extract the desired bit manually.
This is implemented against nxas:
8dbc389957/table.h (L68) 
						
						
					 
					
						2020-04-23 18:29:38 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							4fb921ff6b 
							
						 
					 
					
						
						
							
							shader/texture: Support multiple unknown sampler properties  
						
						... 
						
						
						
						This allows deducing some properties from the texture instruction before
asking the runtime. By doing this we can handle type mismatches in some
instructions from the renderer instead of the shader decoder.
Fixes texelFetch issues with games using 2D texture instructions on a 1D
sampler. 
						
						
					 
					
						2020-04-23 18:04:13 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							72deb773fd 
							
						 
					 
					
						
						
							
							shader_ir: Turn classes into data structures  
						
						
						
						
					 
					
						2020-04-23 18:00:06 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							3e35101895 
							
						 
					 
					
						
						
							
							vk_rasterizer: Fix framebuffer creation validation errors  
						
						... 
						
						
						
						Framebuffer creation was ignoring the number of color attachments. 
						
						
					 
					
						2020-04-23 17:34:16 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							8c37cd1af6 
							
						 
					 
					
						
						
							
							vk_pipeline_cache: Unify pipeline cache keys into a single operation  
						
						... 
						
						
						
						This allows us to call Common::CityHash and std::memcmp only once for
GraphicsPipelineCacheKey. While we are at it, do the same for compute. 
						
						
					 
					
						2020-04-23 17:34:16 -03:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							f665c92114 
							
						 
					 
					
						
						
							
							vk_renderpass_cache: Pack renderpass cache key to 12 bytes  
						
						
						
						
					 
					
						2020-04-23 17:34:16 -03:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ff0c49e1ce 
							
						 
					 
					
						
						
							
							kernel: memory: Improve implementation of device shared memory. ( #3707 )  
						
						... 
						
						
						
						* kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory. 
						
						
					 
					
						2020-04-23 11:37:12 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							5c9feaebb6 
							
						 
					 
					
						
						
							
							Clang Format.  
						
						
						
						
					 
					
						2020-04-23 08:52:58 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							b8aef40c56 
							
						 
					 
					
						
						
							
							GPU: Add Fast GPU Time Option.  
						
						
						
						
					 
					
						2020-04-23 08:52:57 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							18a88d19dc 
							
						 
					 
					
						
						
							
							Maxwell3D: Process Macros on MultiMethod.  
						
						
						
						
					 
					
						2020-04-23 08:52:56 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							3fedcc2f6e 
							
						 
					 
					
						
						
							
							DMAPusher: Propagate multimethod writes into the engines.  
						
						
						
						
					 
					
						2020-04-23 08:52:55 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2409fedacf 
							
						 
					 
					
						
						
							
							Merge pull request  #3697  from lioncash/declarations  
						
						... 
						
						
						
						CMakeLists: Enable -Wmissing-declarations on Linux builds 
						
						
					 
					
						2020-04-23 02:18:52 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							bf2ddb8fd5 
							
						 
					 
					
						
						
							
							Merge pull request  #3677  from FernandoS27/better-sync  
						
						... 
						
						
						
						Introduce Predictive Flushing and Improve ASYNC GPU 
						
						
					 
					
						2020-04-22 22:09:38 -04:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							d9463f4562 
							
						 
					 
					
						
						
							
							vk_pipeline_cache: Fix unintentional memcpy into optional  
						
						... 
						
						
						
						The intention behind this was to assign a float to from an uint32_t, but
it was unintentionally being copied directly into the std::optional.
Copy to a temporary and assign that temporary to std::optional. This can
be replaced with std::bit_cast<float> once we are in C++20. 
						
						
					 
					
						2020-04-22 21:36:05 -03:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							c043ac4f13 
							
						 
					 
					
						
						
							
							GL_Fence_Manager: use GL_TIMEOUT_IGNORED instead of a loop,  
						
						
						
						
					 
					
						2020-04-22 20:34:32 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							afae40a99e 
							
						 
					 
					
						
						
							
							Merge pull request  #3653  from ReinUsesLisp/nsight-aftermath  
						
						... 
						
						
						
						renderer_vulkan: Integrate Nvidia Nsight Aftermath on Windows 
						
						
					 
					
						2020-04-22 11:39:01 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							4e37f1b113 
							
						 
					 
					
						
						
							
							Address Feedback.  
						
						
						
						
					 
					
						2020-04-22 11:36:27 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							39e5b72948 
							
						 
					 
					
						
						
							
							Async GPU: Correct flushing behavior to be similar to old async GPU behavior.  
						
						
						
						
					 
					
						2020-04-22 11:36:26 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							1b3be8a8f8 
							
						 
					 
					
						
						
							
							MaxwellDMA: Correct copying on accuracy level.  
						
						
						
						
					 
					
						2020-04-22 11:36:25 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							644588fd88 
							
						 
					 
					
						
						
							
							ShaderCache/PipelineCache: Cache null shaders.  
						
						
						
						
					 
					
						2020-04-22 11:36:25 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							f616dc0b59 
							
						 
					 
					
						
						
							
							Address Feedback.  
						
						
						
						
					 
					
						2020-04-22 11:36:24 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							ec2f3e48e1 
							
						 
					 
					
						
						
							
							Fix GCC error.  
						
						
						
						
					 
					
						2020-04-22 11:36:23 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							b3e5f177ba 
							
						 
					 
					
						
						
							
							QueryCache: Only do async flushes on async gpu.  
						
						
						
						
					 
					
						2020-04-22 11:36:21 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							f4ab223ef0 
							
						 
					 
					
						
						
							
							Async GPU: Only do reactive flushing on Extreme Level.  
						
						
						
						
					 
					
						2020-04-22 11:36:20 -04:00 
						 
				 
			
				
					
						
							
							
								ReinUsesLisp 
							
						 
					 
					
						
						
						
						
							
						
						
							b752faf2d3 
							
						 
					 
					
						
						
							
							vk_fence_manager: Initial implementation  
						
						
						
						
					 
					
						2020-04-22 11:36:19 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							0649f05900 
							
						 
					 
					
						
						
							
							QueryCache: Implement Async Flushes.  
						
						
						
						
					 
					
						2020-04-22 11:36:18 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							131b342130 
							
						 
					 
					
						
						
							
							OpenGL: Guarantee writes to Buffers.  
						
						
						
						
					 
					
						2020-04-22 11:36:18 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							1fb516cd97 
							
						 
					 
					
						
						
							
							GPU: Implement Flush Requests for Async mode.  
						
						
						
						
					 
					
						2020-04-22 11:36:17 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							b7bc3c2549 
							
						 
					 
					
						
						
							
							FenceManager: Manage syncpoints and rename fences to semaphores.  
						
						
						
						
					 
					
						2020-04-22 11:36:16 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							96bb961a64 
							
						 
					 
					
						
						
							
							BufferCache: Refactor async managing.  
						
						
						
						
					 
					
						2020-04-22 11:36:15 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							b10db7e4a5 
							
						 
					 
					
						
						
							
							FenceManager: Implement async buffer cache flushes on High settings  
						
						
						
						
					 
					
						2020-04-22 11:36:15 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							4adfc9bb08 
							
						 
					 
					
						
						
							
							Rasterizer: Document SignalFence & ReleaseFences and setup skeletons on Vulkan.  
						
						
						
						
					 
					
						2020-04-22 11:36:14 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							a081a7c855 
							
						 
					 
					
						
						
							
							GPU: Fix rebase errors.  
						
						
						
						
					 
					
						2020-04-22 11:36:13 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							e84eb64e51 
							
						 
					 
					
						
						
							
							Rasterizer: Disable fence managing in synchronous gpu.  
						
						
						
						
					 
					
						2020-04-22 11:36:12 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							165ae823f5 
							
						 
					 
					
						
						
							
							ThreadManager: Sync async reads on accurate gpu.  
						
						
						
						
					 
					
						2020-04-22 11:36:12 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							57fdbd9b89 
							
						 
					 
					
						
						
							
							FenceManager: Implement should wait.  
						
						
						
						
					 
					
						2020-04-22 11:36:11 -04:00 
						 
				 
			
				
					
						
							
							
								Fernando Sahmkow 
							
						 
					 
					
						
						
						
						
							
						
						
							1f345ebe3a 
							
						 
					 
					
						
						
							
							GPU: Implement a Fence Manager.  
						
						
						
						
					 
					
						2020-04-22 11:36:10 -04:00