bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							d08fd7e86d 
							
						 
					 
					
						
						
							
							gl_shader_decompiler: Skip RRO instruction.  
						
						
						
						
					 
					
						2018-04-20 22:30:56 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							8b28dc55e6 
							
						 
					 
					
						
						
							
							gl_shader_decompiler: Cleanup error logging.  
						
						
						
						
					 
					
						2018-04-20 22:30:56 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e1630c4d43 
							
						 
					 
					
						
						
							
							shader_bytecode: Add several more instruction decodings.  
						
						
						
						
					 
					
						2018-04-20 22:30:56 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							9f6d305eab 
							
						 
					 
					
						
						
							
							shader_bytecode: Decode instructions based on bit strings.  
						
						
						
						
					 
					
						2018-04-20 22:30:56 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8ac3a3f45e 
							
						 
					 
					
						
						
							
							Merge pull request  #369  from Subv/shader_instr2  
						
						... 
						
						
						
						ShaderGen: Implemented fsetp/kil and predicated instruction execution. 
						
						
					 
					
						2018-04-20 22:29:39 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							634d9ee18b 
							
						 
					 
					
						
						
							
							Merge pull request  #374  from lioncash/noexcept  
						
						... 
						
						
						
						gl_resource_manager: Add missing noexcept specifiers to move constructors and assignment operators 
						
						
					 
					
						2018-04-20 22:28:47 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							17a0ef1e1e 
							
						 
					 
					
						
						
							
							ShaderGen: Implemented the KIL instruction, which is equivalent to 'discard'.  
						
						
						
						
					 
					
						2018-04-20 21:09:34 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							c3a8ea76f1 
							
						 
					 
					
						
						
							
							ShaderGen: Implemented predicated instruction execution.  
						
						... 
						
						
						
						Each predicated instruction will be wrapped in an `if (predicate) { instruction_body; }` in the GLSL, where `predicate` is one of the predicate boolean variables previously set by fsetp. 
						
						
					 
					
						2018-04-20 21:09:33 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							0a5e01b710 
							
						 
					 
					
						
						
							
							ShaderGen: Implemented the fsetp instruction.  
						
						... 
						
						
						
						Predicate variables are now added to the generated shader code in the form of 'pX' where X is the predicate id.
These predicate variables are initialized to false on shader startup and are set via the fsetp instructions.
TODO:
* Not all the comparison types are implemented.
* Only the single-predicate version is implemented. 
						
						
					 
					
						2018-04-20 21:09:33 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							eafdcc1b8a 
							
						 
					 
					
						
						
							
							opengl: Remove unnecessary header inclusions  
						
						
						
						
					 
					
						2018-04-20 20:19:37 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							ab71997b2c 
							
						 
					 
					
						
						
							
							gl_resource_manager: Add missing noexcept specifiers to move constructors and assignment operators  
						
						... 
						
						
						
						Standard library containers may use std::move_if_noexcept to perform
move operations. If a move cannot be performed under these
circumstances, then a copy is attempted. Given we only intend for these
types to be move-only this can be somewhat problematic. By defining
these to be noexcept we prevent cases where copies may be attempted. 
						
						
					 
					
						2018-04-20 20:04:00 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							7db0b8d74f 
							
						 
					 
					
						
						
							
							gl_rasterizer_cache: Make MatchFlags an enum class  
						
						... 
						
						
						
						Prevents implicit conversions and scope pollution. 
						
						
					 
					
						2018-04-20 19:50:05 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							d03fc77475 
							
						 
					 
					
						
						
							
							ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO).  
						
						
						
						
					 
					
						2018-04-20 14:57:40 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							2e0a9f66a0 
							
						 
					 
					
						
						
							
							ShaderGen: Ignore the 'sched' instruction when generating shaders.  
						
						... 
						
						
						
						The 'sched' instruction has a very convoluted encoding, but fortunately it seems to only appear on a fixed interval (once every 4 instructions). 
						
						
					 
					
						2018-04-20 14:57:40 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							326b044c19 
							
						 
					 
					
						
						
							
							Merge pull request  #367  from lioncash/clamp  
						
						... 
						
						
						
						math_util: Remove the Clamp() function 
						
						
					 
					
						2018-04-20 14:18:03 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							fae2dd0344 
							
						 
					 
					
						
						
							
							math_util: Remove the Clamp() function  
						
						... 
						
						
						
						C++17 adds clamp() to the standard library, so we can remove ours in
favor of it. 
						
						
					 
					
						2018-04-20 10:14:13 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							701dd649e6 
							
						 
					 
					
						
						
							
							Merge pull request  #363  from lioncash/array-size  
						
						... 
						
						
						
						common_funcs: Remove ARRAY_SIZE macro 
						
						
					 
					
						2018-04-20 09:43:02 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							d9e316e353 
							
						 
					 
					
						
						
							
							common_funcs: Remove ARRAY_SIZE macro  
						
						... 
						
						
						
						C++17 has non-member size() which we can just call where necessary. 
						
						
					 
					
						2018-04-19 22:36:52 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							3841ec4200 
							
						 
					 
					
						
						
							
							renderer_opengl: Add missing header guards  
						
						
						
						
					 
					
						2018-04-19 21:13:59 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							17ad56c1dc 
							
						 
					 
					
						
						
							
							Merge pull request  #356  from lioncash/shader  
						
						... 
						
						
						
						glsl_shader_decompiler: Minor API changes to ShaderWriter 
						
						
					 
					
						2018-04-19 21:09:25 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							e3b6f6c016 
							
						 
					 
					
						
						
							
							glsl_shader_decompiler: Use std::string_view instead of std::string for AddLine()  
						
						... 
						
						
						
						This function doesn't need to take ownership of the string data being
given to it, considering all we do is append the characters to the
internal string instance.
Instead, use a string view to simply reference the string data without
any potential heap allocation.
Now anything that is a raw const char* won't need to be converted to a
std::string before appending. 
						
						
					 
					
						2018-04-19 20:12:58 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							412b31ad72 
							
						 
					 
					
						
						
							
							glsl_shader_decompiler: Add AddNewLine() function to ShaderWriter  
						
						... 
						
						
						
						Avoids constructing a std::string just to append a newline character 
						
						
					 
					
						2018-04-19 20:09:27 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							aa26baa3db 
							
						 
					 
					
						
						
							
							glsl_shader_decompiler: Add char overload for ShaderWriter's AddLine()  
						
						... 
						
						
						
						Avoids constructing a std::string just to append a character. 
						
						
					 
					
						2018-04-19 20:04:09 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							4ef392906b 
							
						 
					 
					
						
						
							
							glsl_shader_decompiler: Append indentation without constructing a separate std::string  
						
						... 
						
						
						
						The interface of std::string already lets us append N copies of a
character to an existing string. 
						
						
					 
					
						2018-04-19 19:59:25 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							fe84842137 
							
						 
					 
					
						
						
							
							ShaderGen: Implemented the fmul32i shader instruction.  
						
						
						
						
					 
					
						2018-04-19 13:46:32 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							5367935d35 
							
						 
					 
					
						
						
							
							ShaderGen: Fixed a case where the TEXS instruction would use the same registers for the input and the output.  
						
						... 
						
						
						
						It will now save the coords before writing the outputs in a subscope. 
						
						
					 
					
						2018-04-19 13:33:17 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							057170928c 
							
						 
					 
					
						
						
							
							GPU: Add support for the DXT23 and DXT45 compressed texture formats.  
						
						
						
						
					 
					
						2018-04-18 20:48:53 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							60e6e8953e 
							
						 
					 
					
						
						
							
							Merge pull request  #351  from Subv/tex_formats  
						
						... 
						
						
						
						GPU: Implemented the B5G6R5 format. 
						
						
					 
					
						2018-04-18 20:20:51 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							2985056340 
							
						 
					 
					
						
						
							
							GPU: Implemented the B5G6R5 format.  
						
						
						
						
					 
					
						2018-04-18 18:16:45 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ce4f159b1c 
							
						 
					 
					
						
						
							
							gl_shader_gen: Support vertical/horizontal viewport flipping. ( #347 )  
						
						... 
						
						
						
						* gl_shader_gen: Support vertical/horizontal viewport flipping.
* fixup! gl_shader_gen: Support vertical/horizontal viewport flipping. 
						
						
					 
					
						2018-04-18 16:42:40 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							43d98ca8fe 
							
						 
					 
					
						
						
							
							GLCache: Added boilerplate code to make supporting configurable texture component types.  
						
						... 
						
						
						
						For now only the UNORM type is supported. 
						
						
					 
					
						2018-04-18 14:17:28 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							5b3fab6766 
							
						 
					 
					
						
						
							
							GLCache: Unify texture and framebuffer formats when converting to OpenGL.  
						
						
						
						
					 
					
						2018-04-18 14:17:28 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b2c1672e10 
							
						 
					 
					
						
						
							
							GPU: Texture format 8 and framebuffer format 0xD5 are actually ABGR8.  
						
						
						
						
					 
					
						2018-04-18 14:17:27 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							48d4efbd69 
							
						 
					 
					
						
						
							
							GPU: Pitch textures are now supported, don't assert when encountering them.  
						
						
						
						
					 
					
						2018-04-18 12:52:53 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							a3e82e8e1f 
							
						 
					 
					
						
						
							
							GLCache: Take into account the texture's block height when caching and unswizzling.  
						
						
						
						
					 
					
						2018-04-18 12:52:53 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							ac09b5a2e9 
							
						 
					 
					
						
						
							
							GLCache: Added a function to convert cached PixelFormats back to texture formats.  
						
						... 
						
						
						
						TODO: The way we handle cached formats must change, framebuffer and texture formats are too different to keep them in the same place. 
						
						
					 
					
						2018-04-18 12:52:52 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							6b63aaa5b4 
							
						 
					 
					
						
						
							
							GPU: Allow using a configurable block height when unswizzling textures.  
						
						
						
						
					 
					
						2018-04-18 12:52:51 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							db5f2bfa7e 
							
						 
					 
					
						
						
							
							GPU/TIC: Added the pitch and block height fields to the TIC structure.  
						
						
						
						
					 
					
						2018-04-18 11:38:39 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c93ea96366 
							
						 
					 
					
						
						
							
							Merge pull request  #346  from bunnei/misc-gpu-improvements  
						
						... 
						
						
						
						Misc gpu improvements 
						
						
					 
					
						2018-04-17 22:17:07 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							71b4a3b9f6 
							
						 
					 
					
						
						
							
							Merge pull request  #344  from bunnei/shader-decompiler-p2  
						
						... 
						
						
						
						Shader decompiler changes part 2 
						
						
					 
					
						2018-04-17 22:10:53 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							7222d9a4c3 
							
						 
					 
					
						
						
							
							gl_rasterizer_cache: Add missing LOG statements.  
						
						
						
						
					 
					
						2018-04-17 21:44:36 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							9df8e924fb 
							
						 
					 
					
						
						
							
							texture: Add missing formats.  
						
						
						
						
					 
					
						2018-04-17 21:41:36 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							3ed8a1cac7 
							
						 
					 
					
						
						
							
							gpu: Add several framebuffer formats to RenderTargetFormat.  
						
						
						
						
					 
					
						2018-04-17 21:40:38 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							4a8eb6745e 
							
						 
					 
					
						
						
							
							maxwell3d: Allow Texture2DNoMipmap as Texture2D.  
						
						
						
						
					 
					
						2018-04-17 21:39:15 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							531c25386e 
							
						 
					 
					
						
						
							
							shader_bytecode: Make ctor's constexpr and explicit.  
						
						
						
						
					 
					
						2018-04-17 21:27:07 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							174cba5c58 
							
						 
					 
					
						
						
							
							renderer_opengl: Implement BlendEquation and BlendFunc.  
						
						
						
						
					 
					
						2018-04-17 18:11:48 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1f6fe062ca 
							
						 
					 
					
						
						
							
							gl_shader_decompiler: Fix warnings with MarkAsUsed.  
						
						
						
						
					 
					
						2018-04-17 16:36:44 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							ed542a7309 
							
						 
					 
					
						
						
							
							gl_shader_decompiler: Cleanup logging, updating to NGLOG_*.  
						
						
						
						
					 
					
						2018-04-17 16:36:44 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							ef2d5ab0c1 
							
						 
					 
					
						
						
							
							gl_shader_decompiler: Implement several MUFU subops and abs_d.  
						
						
						
						
					 
					
						2018-04-17 16:36:43 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							59f4ff4659 
							
						 
					 
					
						
						
							
							gl_shader_decompiler: Fix swizzle in GetRegister.  
						
						
						
						
					 
					
						2018-04-17 16:36:42 -04:00