David Marcec 
							
						 
					 
					
						
						
							
						
						60754b4728 
					 
					
						
						
							
							Removed saturate assert  
						
						... 
						
						
						
						Unneeded as we already implement it 
						
						
					 
					
						2018-09-01 19:33:32 +10:00 
						 
				 
			
				
					
						
							
							
								David Marcec 
							
						 
					 
					
						
						
							
						
						6f8ed9508d 
					 
					
						
						
							
							Added FMUL asserts  
						
						
						
						
					 
					
						2018-09-01 19:05:10 +10:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						4a587b81b2 
					 
					
						
						
							
							core/core: Replace includes with forward declarations where applicable  
						
						... 
						
						
						
						The follow-up to e2457418da 
						
						
					 
					
						2018-08-31 16:30:14 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						7f7eb29323 
					 
					
						
						
							
							gl_rasterizer_cache: Use accurate framebuffer setting for accurate copies.  
						
						
						
						
					 
					
						2018-08-31 13:07:28 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						123c065086 
					 
					
						
						
							
							gl_rasterizer_cache: Also use reserve cache for RecreateSurface.  
						
						
						
						
					 
					
						2018-08-31 13:07:28 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						9bc71fcc5f 
					 
					
						
						
							
							rasterizer_cache: Use boost::interval_map for a more accurate cache.  
						
						
						
						
					 
					
						2018-08-31 13:07:28 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						d647d9550c 
					 
					
						
						
							
							gl_renderer: Cache textures, framebuffers, and shaders based on CPU address.  
						
						
						
						
					 
					
						2018-08-31 13:07:27 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						16d65182f9 
					 
					
						
						
							
							gl_rasterizer: Fix issues with the rasterizer cache.  
						
						... 
						
						
						
						- Use a single cached page map.
- Fix calculation of ending page. 
						
						
					 
					
						2018-08-31 13:07:27 -04:00 
						 
				 
			
				
					
						
							
							
								greggameplayer 
							
						 
					 
					
						
						
							
						
						06578e89b2 
					 
					
						
						
							
							Implement BC6H_UF16 & BC6H_SF16 ( #1092 )  
						
						... 
						
						
						
						* Implement BC6H_UF16 & BC6H_SF16
Require by ARMS
* correct coding style
* correct coding style part 2 
						
						
					 
					
						2018-08-31 12:11:19 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						f08d24e9c0 
					 
					
						
						
							
							Merge pull request  #1204  from lioncash/pimpl  
						
						... 
						
						
						
						core: Make the main System class use the PImpl idiom 
						
						
					 
					
						2018-08-31 11:31:20 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						6683bf50b5 
					 
					
						
						
							
							Merge pull request  #1207  from degasus/hotfix  
						
						... 
						
						
						
						Report correct shader size. 
						
						
					 
					
						2018-08-31 11:21:15 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						e2457418da 
					 
					
						
						
							
							core: Make the main System class use the PImpl idiom  
						
						... 
						
						
						
						core.h is kind of a massive header in terms what it includes within
itself. It includes VFS utilities, kernel headers, file_sys header,
ARM-related headers, etc. This means that changing anything in the
headers included by core.h essentially requires you to rebuild almost
all of core.
Instead, we can modify the System class to use the PImpl idiom, which
allows us to move all of those headers to the cpp file and forward
declare the bulk of the types that would otherwise be included, reducing
compile times. This change specifically only performs the PImpl portion. 
						
						
					 
					
						2018-08-31 07:16:57 -04:00 
						 
				 
			
				
					
						
							
							
								Markus Wick 
							
						 
					 
					
						
						
							
						
						5be8b7a362 
					 
					
						
						
							
							Report correct shader size.  
						
						... 
						
						
						
						Seems like this was an oversee in regards to 1fd979f50a 
						
						
					 
					
						2018-08-31 09:56:37 +02:00 
						 
				 
			
				
					
						
							
							
								Hexagon12 
							
						 
					 
					
						
						
							
						
						d626bc8c62 
					 
					
						
						
							
							Added predicate comparison GreaterEqualWithNan  
						
						
						
						
					 
					
						2018-08-31 10:40:18 +03:00 
						 
				 
			
				
					
						
							
							
								Laku 
							
						 
					 
					
						
						
							
						
						915ab81ec2 
					 
					
						
						
							
							gl_shader_decompiler: Implement POPC ( #1203 )  
						
						... 
						
						
						
						* Implement POPC
* implement invert 
						
						
					 
					
						2018-08-30 21:32:58 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						d6accf96ff 
					 
					
						
						
							
							Merge pull request  #1200  from bunnei/improve-ipa  
						
						... 
						
						
						
						gl_shader_decompiler: Improve IPA for Pass mode with Position attribute. 
						
						
					 
					
						2018-08-30 10:31:26 -04:00 
						 
				 
			
				
					
						
							
							
								tech4me 
							
						 
					 
					
						
						
							
						
						a6dd577d02 
					 
					
						
						
							
							Shaders: Implemented IADD3  
						
						
						
						
					 
					
						2018-08-29 13:44:41 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						b1ccd88434 
					 
					
						
						
							
							gl_shader_decompiler: Improve IPA for Pass mode with Position attribute.  
						
						
						
						
					 
					
						2018-08-29 00:37:29 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						4d7e1662c8 
					 
					
						
						
							
							Merge pull request  #1193  from lioncash/priv  
						
						... 
						
						
						
						gpu: Make memory_manager private 
						
						
					 
					
						2018-08-28 12:28:57 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						eb4f2d5596 
					 
					
						
						
							
							Merge pull request  #1192  from lioncash/unused  
						
						... 
						
						
						
						gl_rasterizer: Remove unused variables 
						
						
					 
					
						2018-08-28 12:28:13 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						2e7dc4cac9 
					 
					
						
						
							
							gl_shader_cache: Remove unused program_code vector in GetShaderAddress()  
						
						... 
						
						
						
						Given std::vector is a type with a non-trivial destructor, this
variable cannot be optimized away by the compiler, even if unused.
Because of that, something that was intended to be fairly lightweight,
was actually allocating 32KB and deallocating it at the end of the
function. 
						
						
					 
					
						2018-08-28 11:20:41 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						45fb74d262 
					 
					
						
						
							
							gpu: Make memory_manager private  
						
						... 
						
						
						
						Makes the class interface consistent and provides accessors for
obtaining a reference to the memory manager instance.
Given we also return references, this makes our more flimsy uses of
const apparent, given const doesn't propagate through pointers in the
way one would typically expect. This makes our mutable state more
apparent in some places. 
						
						
					 
					
						2018-08-28 11:11:50 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						6771a18c6c 
					 
					
						
						
							
							gl_rasterizer: Remove unused variables  
						
						
						
						
					 
					
						2018-08-28 10:46:29 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						b55d8111e6 
					 
					
						
						
							
							renderer_opengl: Implement a new shader cache.  
						
						
						
						
					 
					
						2018-08-27 18:26:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						a0e1566dc5 
					 
					
						
						
							
							gl_rasterizer_cache: Update to use RasterizerCache base class.  
						
						
						
						
					 
					
						2018-08-27 18:26:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						382852418b 
					 
					
						
						
							
							video_core: Add RasterizerCache class for common cache management code.  
						
						
						
						
					 
					
						2018-08-27 18:26:45 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						2f5ed3877c 
					 
					
						
						
							
							Merge pull request  #1169  from Lakumakkara/sel  
						
						... 
						
						
						
						shader_bytecode: fix SEL_IMM bitstring 
						
						
					 
					
						2018-08-27 18:24:57 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						f96ded9815 
					 
					
						
						
							
							Merge pull request  #1174  from lioncash/debug  
						
						... 
						
						
						
						debug_utils: Minor individual interface changes 
						
						
					 
					
						2018-08-27 15:44:29 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						be2f1eabd7 
					 
					
						
						
							
							Merge pull request  #1173  from lioncash/batch  
						
						... 
						
						
						
						maxwell3d: Move FinishedPrimitiveBatch event after AcceleratedDrawBatch() 
						
						
					 
					
						2018-08-25 10:59:54 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						23b86fd3ea 
					 
					
						
						
							
							Merge pull request  #1167  from lioncash/assert  
						
						... 
						
						
						
						gl_rasterizer: Correct assertion condition in SyncLogicOpState() 
						
						
					 
					
						2018-08-25 10:50:59 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						c65713832c 
					 
					
						
						
							
							debug_utils: Remove unused includes  
						
						... 
						
						
						
						Quite a bit of these aren't necessary directly within the debug_utils
header and can be removed or included where actually necessary. 
						
						
					 
					
						2018-08-24 20:49:14 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						1e6a209649 
					 
					
						
						
							
							debug_utils: Make BreakpointObserver class' constructor explicit  
						
						... 
						
						
						
						Avoids implicit conversions. 
						
						
					 
					
						2018-08-24 20:49:14 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						b6425c0511 
					 
					
						
						
							
							debug_utils: Initialize active_breakpoint member of DebugContext  
						
						... 
						
						
						
						Ensures that all class members are initialized. 
						
						
					 
					
						2018-08-24 20:15:50 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						20800f2df7 
					 
					
						
						
							
							maxwell3d: Move FinishedPrimitiveBatch event after AcceleratedDrawBatch()  
						
						... 
						
						
						
						The start and finish events should likely not be right after one another
like this, otherwise the batch will appear to complete immediately 
						
						
					 
					
						2018-08-24 19:58:05 -04:00 
						 
				 
			
				
					
						
							
							
								Laku 
							
						 
					 
					
						
						
							
						
						36093a3e4d 
					 
					
						
						
							
							fix SEL_IMM bitstring  
						
						
						
						
					 
					
						2018-08-24 07:18:12 +03:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						8fd9eb71b4 
					 
					
						
						
							
							gl_rasterizer: Correct assertion condition in SyncLogicOpState()  
						
						... 
						
						
						
						Previously the assert would always be hit, since it was the equivalent
of: array == nullptr, which is never true. 
						
						
					 
					
						2018-08-23 23:00:54 -04:00 
						 
				 
			
				
					
						
							
							
								tech4me 
							
						 
					 
					
						
						
							
						
						ba2972bc64 
					 
					
						
						
							
							Shaders: Added decodings for IADD3 instructions  
						
						
						
						
					 
					
						2018-08-23 15:46:59 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						0dce6d7008 
					 
					
						
						
							
							Merge pull request  #1160  from bunnei/surface-reserve  
						
						... 
						
						
						
						gl_rasterizer_cache: Several improvements 
						
						
					 
					
						2018-08-23 12:04:37 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						d65f079cc1 
					 
					
						
						
							
							gl_rasterizer_cache: Blit when possible on RecreateSurface.  
						
						
						
						
					 
					
						2018-08-23 11:27:01 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						fee8bdd90c 
					 
					
						
						
							
							gl_rasterizer_cache: Reserve surfaces that have already been created for later use.  
						
						
						
						
					 
					
						2018-08-23 11:27:01 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						fde2017a3f 
					 
					
						
						
							
							gl_rasterizer_cache: Remove assert for RecreateSurface type.  
						
						
						
						
					 
					
						2018-08-23 11:27:00 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						ebf5768340 
					 
					
						
						
							
							gl_rasterizer_cache: Implement compressed texture copies.  
						
						
						
						
					 
					
						2018-08-23 11:27:00 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						a4ac3bed6c 
					 
					
						
						
							
							gl_rasterizer: Implement stencil test.  
						
						... 
						
						
						
						- Used by Splatoon 2. 
						
						
					 
					
						2018-08-23 11:08:49 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						da3da6be90 
					 
					
						
						
							
							gl_rasterizer: Implement partial color clear and stencil clear.  
						
						
						
						
					 
					
						2018-08-23 11:08:48 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						2a472ff54d 
					 
					
						
						
							
							maxwell_3d: Update to include additional stencil registers.  
						
						
						
						
					 
					
						2018-08-23 11:08:47 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						c4ed0b16b1 
					 
					
						
						
							
							gl_state: Update to handle stencil front/back face separately.  
						
						
						
						
					 
					
						2018-08-23 11:08:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						c7f2fb2151 
					 
					
						
						
							
							Merge pull request  #1157  from lioncash/vec  
						
						... 
						
						
						
						gl_shader_gen: Use a std::vector to represent program code instead of std::array 
						
						
					 
					
						2018-08-23 02:19:00 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
						
						232b0d9d2a 
					 
					
						
						
							
							Merge pull request  #1156  from Lakumakkara/lop3  
						
						... 
						
						
						
						gl_shader_decompiler: Implement LOP3 
						
						
					 
					
						2018-08-23 02:16:49 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						12ba80a86c 
					 
					
						
						
							
							gl_shader_gen: Make ShaderSetup's constructor explicit  
						
						... 
						
						
						
						Prevents implicit conversions. 
						
						
					 
					
						2018-08-22 17:04:44 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
						
						1fd979f50a 
					 
					
						
						
							
							gl_shader_gen: Use a std::vector to represent program code instead of std::array  
						
						... 
						
						
						
						While convenient as a std::array, it's also quite a large set of data as
well (32KB). It being an array also means data cannot be std::moved. Any
situation where the code is being set or relocated means that a full
copy of that 32KB data must be done.
If we use a std::vector we do need to allocate on the heap, however, it
does allow us to std::move the data we have within the std::vector into
another std::vector instance, eliminating the need to always copy the
program data (as std::move in this case would just transfer the pointers
and bare necessities over to the new vector instance). 
						
						
					 
					
						2018-08-22 17:04:44 -04:00