Henri Verbeet 
							
						 
					 
					
						
						
							
						
						f5d702b09a 
					 
					
						
						
							
							vkd3d-shader/dxbc: Validate component types in shader_parse_signature().  
						
						
						
						
					 
					
						2025-02-24 15:10:08 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						b8d740ebfc 
					 
					
						
						
							
							vkd3d-shader/dxbc: Output messages for invalid semantic name references in shader_parse_signature().  
						
						
						
						
					 
					
						2025-02-24 15:10:08 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						3bcdb85ddc 
					 
					
						
						
							
							vkd3d-shader/dxbc: Set the "elements_capacity" field as well in shader_parse_signature().  
						
						... 
						
						
						
						Leaving it as 0 mostly ends up doing the right thing in practice, but isn't
quite right. 
						
						
					 
					
						2025-02-24 15:10:08 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						4e28d1c658 
					 
					
						
						
							
							vkd3d-shader/dxbc: Do not extract I/O signatures for DXIL shaders.  
						
						... 
						
						
						
						The DXIL parser doesn't need them. 
						
						
					 
					
						2025-02-20 15:57:26 +01:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						d9c4a257c2 
					 
					
						
						
							
							vkd3d-shader/dxbc: Parse the SFI0 ROV requirement.  
						
						
						
						
					 
					
						2024-12-09 16:09:16 +01:00 
						 
				 
			
				
					
						
							
							
								Giovanni Mascellani 
							
						 
					 
					
						
						
							
						
						cd74461d6d 
					 
					
						
						
							
							vkd3d-shader/ir: Set the signature sort indices in shader_signature_merge().  
						
						... 
						
						
						
						Since the sort index is just a convenience field it is more
appropriate to only set it where it is required, instead of
requiring all frontends and passes to retain sensible values for
it. 
						
						
					 
					
						2024-10-08 22:05:38 +02:00 
						 
				 
			
				
					
						
							
							
								Giovanni Mascellani 
							
						 
					 
					
						
						
							
						
						1a0d6a4db4 
					 
					
						
						
							
							vkd3d-shader: Use a hash to build the filename when dumping shaders.  
						
						... 
						
						
						
						This way the same shader is always dumped to the same path and when
launching the same program over and over we avoid both creating new
copies of the same file each time and overwriting different dumped
shaders. 
						
						
					 
					
						2024-08-29 19:14:27 +02:00 
						 
				 
			
				
					
						
							
							
								Giovanni Mascellani 
							
						 
					 
					
						
						
							
						
						4094e5dbeb 
					 
					
						
						
							
							vkd3d-shader: Replace assert() with VKD3D_ASSERT() in dxbc.c.  
						
						
						
						
					 
					
						2024-07-30 16:32:59 +02:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						b5ac6ac636 
					 
					
						
						
							
							vkd3d-shader: Use a separate allocation for the "semantic_name" field of shader signature elements.  
						
						... 
						
						
						
						For tpf shader this would previously be a pointer into the original
shader code, and for d3dbc shaders we'd use static strings.
Unfortunately the dxil parser creates shader signatures where these
are pointers to metadata strings, and those go away when we call
sm6_parser_cleanup().
We could conceivably store a flag in the shader signature to indicate
whether shader_signature_cleanup()/vkd3d_shader_free_shader_signature()
should free the "semantic_name" field. It'd be a little ugly, and seems
unlikely to be worth it, but I'd be willing to be convinced. 
						
						
					 
					
						2024-05-23 23:12:06 +02:00 
						 
				 
			
				
					
						
							
							
								Giovanni Mascellani 
							
						 
					 
					
						
						
							
						
						470d83a9da 
					 
					
						
						
							
							vkd3d-shader: Move shader signatures to vsir_program.  
						
						
						
						
					 
					
						2024-03-11 22:09:31 +01:00 
						 
				 
			
				
					
						
							
							
								Giovanni Mascellani 
							
						 
					 
					
						
						
							
						
						56dc0c9842 
					 
					
						
						
							
							vkd3d-shader/dxbc: Decouple vkd3d_shader_desc from DXBC parsing.  
						
						
						
						
					 
					
						2024-03-11 22:09:30 +01:00 
						 
				 
			
				
					
						
							
							
								Giovanni Mascellani 
							
						 
					 
					
						
						
							
						
						75bc68962d 
					 
					
						
						
							
							vkd3d-shader/dxbc: Add flag to ignore the DXBC checksum.  
						
						
						
						
					 
					
						2024-03-11 22:08:55 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						bf628f0c74 
					 
					
						
						
							
							vkd3d-shader/ir: Store block names in struct vsir_program.  
						
						
						
						
					 
					
						2024-01-23 20:27:35 +01:00 
						 
				 
			
				
					
						
							
							
								Conor McCarthy 
							
						 
					 
					
						
						
							
						
						37d9dba512 
					 
					
						
						
							
							vkd3d-shader/ir: Store code block names in struct vkd3d_shader_desc.  
						
						
						
						
					 
					
						2024-01-17 22:28:38 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						3e2ace8d33 
					 
					
						
						
							
							vkd3d-shader/dxbc: Use sizeof(uint32_t) instead of sizeof(DWORD) in calls to require_space().  
						
						
						
						
					 
					
						2024-01-11 23:05:56 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						69350e1ff0 
					 
					
						
						
							
							vkd3d-shader/dxbc: Pass an unsigned int count to shader_parse_root_parameters1().  
						
						
						
						
					 
					
						2024-01-11 23:05:54 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						04acc52496 
					 
					
						
						
							
							vkd3d-shader/dxbc: Pass a size_t offset to shader_get_string().  
						
						
						
						
					 
					
						2024-01-11 23:05:52 +01:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						9dd5b2840f 
					 
					
						
						
							
							vkd3d-shader: Recognise DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS in shader_validate_descriptor_range1().  
						
						
						
						
					 
					
						2024-01-11 23:04:54 +01:00 
						 
				 
			
				
					
						
							
							
								Zebediah Figura 
							
						 
					 
					
						
						
							
						
						cabf9996f9 
					 
					
						
						
							
							vkd3d-shader/tpf: Do not uninvert used masks for domain shader patch constants.  
						
						
						
						
					 
					
						2023-12-11 23:18:42 +01:00 
						 
				 
			
				
					
						
							
							
								Jacek Caban 
							
						 
					 
					
						
						
							
						
						078cf6a240 
					 
					
						
						
							
							vkd3d-shader/dxbc: Use return type to return result from read_u32 and read_float.  
						
						... 
						
						
						
						Avoid implicit casts from enum pointers. 
						
						
					 
					
						2023-11-20 22:07:45 +01:00 
						 
				 
			
				
					
						
							
							
								Conor McCarthy 
							
						 
					 
					
						
						
							
						
						8648ca0e77 
					 
					
						
						
							
							vkd3d-shader/dxil: Read the DXIL input and output signatures.  
						
						... 
						
						
						
						These can differ from the DXBC signatures by having multiple rows, and
load/store instructions reference them by id instead of register index. 
						
						
					 
					
						2023-10-16 22:36:29 +02:00 
						 
				 
			
				
					
						
							
							
								Conor McCarthy 
							
						 
					 
					
						
						
							
						
						5984b4e455 
					 
					
						
						
							
							vkd3d-shader/dxbc: Load input signatures also from ISG1 chunks.  
						
						... 
						
						
						
						When DXBC contains DXIL code it uses ISG1 signatures. 
						
						
					 
					
						2023-09-25 22:07:06 +02:00 
						 
				 
			
				
					
						
							
							
								Zebediah Figura 
							
						 
					 
					
						
						
							
						
						1615e5a76b 
					 
					
						
						
							
							vkd3d-shader/dxbc: Map sm4 fragment outputs to system values based on their name.  
						
						
						
						
					 
					
						2023-09-21 19:16:29 +02:00 
						 
				 
			
				
					
						
							
							
								Zebediah Figura 
							
						 
					 
					
						
						
							
						
						cb96482500 
					 
					
						
						
							
							vkd3d-shader: Add a separate field for the target location of a signature element.  
						
						... 
						
						
						
						We want to be able to remap input signatures based on the signature index, but
signature normalization both reorders the signature, and requires the old
register index, so add a new field for this. 
						
						
					 
					
						2023-08-03 21:20:39 +09:00 
						 
				 
			
				
					
						
							
							
								Zebediah Figura 
							
						 
					 
					
						
						
							
						
						dfb2a316e6 
					 
					
						
						
							
							vkd3d-shader/dxbc: Remove redundant zero-initialization of the vkd3d_shader_desc structure.  
						
						
						
						
					 
					
						2023-07-04 22:39:43 +02:00