Francisco Casas 
							
						 
					 
					
						
						
							
						
						003f4c7600 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Use program->shader_version instead of ctx->profile.  
						
						
						
						
					 
					
						2024-07-09 20:06:23 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						a333090288 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Introduce struct d3dbc_compiler.  
						
						
						
						
					 
					
						2024-07-09 19:44:03 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						dd8aa2ec91 
					 
					
						
						
							
							vkd3d-shader/hlsl: Generate CTAB outside d3dbc_compile().  
						
						... 
						
						
						
						There is no way to store this information from the vsir_program alone,
so we make d3dbc_compile() expect the CTAB blob. 
						
						
					 
					
						2024-07-09 18:59:54 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						130b3335cb 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Split hlsl_sm1_write().  
						
						... 
						
						
						
						The idea is to start splitting the
    HLSL IR -> d3dbc
translation into
    HLSL IR -> vsir -> d3dbc
So hlsl_sm1_write is split into two functions, sm1_generate_vsir()
which should handle the first part and d3dbc_compile() which should
handle the second part.
This translation should be completed once the hlsl_ctx and entry_func
are no longer used in d3dbc_compile(). 
						
						
					 
					
						2024-07-09 18:38:00 +02:00 
						 
				 
			
				
					
						
							
							
								Zebediah Figura 
							
						 
					 
					
						
						
							
						
						6db2bc3eff 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Use enum vkd3d_shader_register_type in struct sm1_instruction.  
						
						
						
						
					 
					
						2024-07-09 16:59:02 +02:00 
						 
				 
			
				
					
						
							
							
								Nikolay Sivov 
							
						 
					 
					
						
						
							
						
						4ff288bd32 
					 
					
						
						
							
							vkd3d-shader: Implement tex*() functions variants with gradient arguments.  
						
						... 
						
						
						
						Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com > 
						
						
					 
					
						2024-07-08 18:23:38 +02:00 
						 
				 
			
				
					
						
							
							
								Nikolay Sivov 
							
						 
					 
					
						
						
							
						
						f03cb7e911 
					 
					
						
						
							
							vkd3d-shader/hlsl: Add RasterizerState type.  
						
						... 
						
						
						
						Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com > 
						
						
					 
					
						2024-07-08 18:12:03 +02:00 
						 
				 
			
				
					
						
							
							
								Nikolay Sivov 
							
						 
					 
					
						
						
							
						
						12947aa50d 
					 
					
						
						
							
							vkd3d-shader/fx: Add support for writing DepthStencilState objects.  
						
						... 
						
						
						
						Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com > 
						
						
					 
					
						2024-07-08 18:12:03 +02:00 
						 
				 
			
				
					
						
							
							
								Nikolay Sivov 
							
						 
					 
					
						
						
							
						
						48ff7de8ef 
					 
					
						
						
							
							vkd3d-shader/hlsl: Add support for ConstantBuffer<> type.  
						
						... 
						
						
						
						Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com > 
						
						
					 
					
						2024-07-08 18:12:03 +02:00 
						 
				 
			
				
					
						
							
							
								Elizabeth Figura 
							
						 
					 
					
						
						
							
						
						7fe581203b 
					 
					
						
						
							
							vkd3d-shader/hlsl: Respect the coords writemask in write_sm1_resource_load().  
						
						... 
						
						
						
						Spotted by Francisco Casas. 
						
						
					 
					
						2024-06-18 13:19:44 -05:00 
						 
				 
			
				
					
						
							
							
								Nikolay Sivov 
							
						 
					 
					
						
						
							
						
						ba18035260 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Write load instruction for tex2Dbias().  
						
						... 
						
						
						
						Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com > 
						
						
					 
					
						2024-06-11 15:50:34 +02:00 
						 
				 
			
				
					
						
							
							
								Elizabeth Figura 
							
						 
					 
					
						
						
							
						
						28a5e23814 
					 
					
						
						
							
							vkd3d-shader: Write SM5.1 register indices.  
						
						... 
						
						
						
						Separate ID and index. Allocate IDs for all external resources (but ignore them
for shader models other than 5). 
						
						
					 
					
						2024-06-11 15:49:30 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						affadf319c 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Write default values for SM1.  
						
						
						
						
					 
					
						2024-06-11 15:46:40 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						253c994155 
					 
					
						
						
							
							vkd3d-shader/tpf: Write default values for SM4.  
						
						
						
						
					 
					
						2024-06-11 15:46:40 +02:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						1fe7a6581b 
					 
					
						
						
							
							vkd3d-shader/ir: Rename the "handler_idx" field of struct vkd3d_shader_instruction to "opcode".  
						
						
						
						
					 
					
						2024-05-30 19:57:01 +02:00 
						 
				 
			
				
					
						
							
							
								Nikolay Sivov 
							
						 
					 
					
						
						
							
						
						f090d1e80d 
					 
					
						
						
							
							vkd3d-shader: Remove explicit newlines from hlsl_fixme() messages.  
						
						... 
						
						
						
						Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com > 
						
						
					 
					
						2024-05-23 23:12:10 +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 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						ce6f8a6a30 
					 
					
						
						
							
							vkd3d-shader/dxil: Parse the shader into a vsir program in vkd3d_shader_sm6_parser_create().  
						
						
						
						
					 
					
						2024-05-16 21:49:40 +02:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						402b96ef3b 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Parse the shader into a vsir program in vkd3d_shader_sm1_parser_create().  
						
						
						
						
					 
					
						2024-05-16 21:49:38 +02:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						efe9dfd73a 
					 
					
						
						
							
							vkd3d-shader/ir: Do not store the vkd3d-shader configuration flags in struct vkd3d_shader_parser.  
						
						
						
						
					 
					
						2024-05-16 21:49:37 +02:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						19b552ce1b 
					 
					
						
						
							
							vkd3d-shader/ir: Pass an initialised vsir_program structure to vkd3d_shader_parser_init().  
						
						
						
						
					 
					
						2024-05-16 21:49:36 +02:00 
						 
				 
			
				
					
						
							
							
								Henri Verbeet 
							
						 
					 
					
						
						
							
						
						9e4a790de1 
					 
					
						
						
							
							vkd3d-shader/ir: Use a separate allocation for the vsir program in struct vkd3d_shader_parser.  
						
						
						
						
					 
					
						2024-05-16 21:49:34 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						e7450ce539 
					 
					
						
						
							
							vkd3d-shader/d3dbc: Write used bind count for numeric uniforms.  
						
						
						
						
					 
					
						2024-05-13 22:26:13 +02:00 
						 
				 
			
				
					
						
							
							
								Francisco Casas 
							
						 
					 
					
						
						
							
						
						657e460d11 
					 
					
						
						
							
							vkd3d-shader/hlsl: Allocate unused variables with register reservations on SM1.  
						
						
						
						
					 
					
						2024-05-13 22:26:03 +02:00 
						 
				 
			
				
					
						
							
							
								Zebediah Figura 
							
						 
					 
					
						
						
							
						
						2480eec98b 
					 
					
						
						
							
							vkd3d-shader/hlsl: Move the "base_type" member to the class-specific union.  
						
						
						
						
					 
					
						2024-05-06 22:12:41 +02:00