mirror of
				https://github.com/encounter/dawn-cmake.git
				synced 2025-10-26 03:30:30 +00:00 
			
		
		
		
	This patch add DXC compile flag "-enable-16bit-types" and change profile to SM6.2 when validating generated HLSL using DXC if f16 extension is enabled in the WGSL program. The patch add Tint end-to-end test cases for expressions using f16 type, including constructor, binary operator, splat, zero-init, and others. Testcases that use f16 types in uniform or storage buffer are SKIPped, because such usage is not implemented yet. Bug: tint:1473, tint:1502 Change-Id: I481ab3d12cbb822f11ef85ba807bca3f9770089b Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/96252 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@chromium.org> Commit-Queue: Zhaoming Jiang <zhaoming.jiang@intel.com>
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ; SPIR-V
 | |
| ; Version: 1.3
 | |
| ; Generator: Google Tint Compiler; 0
 | |
| ; Bound: 17
 | |
| ; Schema: 0
 | |
|                OpCapability Shader
 | |
|                OpCapability Float16
 | |
|                OpCapability UniformAndStorageBuffer16BitAccess
 | |
|                OpCapability StorageBuffer16BitAccess
 | |
|                OpCapability StorageInputOutput16
 | |
|                OpMemoryModel Logical GLSL450
 | |
|                OpEntryPoint GLCompute %f "f"
 | |
|                OpExecutionMode %f LocalSize 1 1 1
 | |
|                OpName %f "f"
 | |
|        %void = OpTypeVoid
 | |
|           %1 = OpTypeFunction %void
 | |
|        %half = OpTypeFloat 16
 | |
|      %v3half = OpTypeVector %half 3
 | |
| %half_0x1p_0 = OpConstant %half 0x1p+0
 | |
| %half_0x1p_1 = OpConstant %half 0x1p+1
 | |
| %half_0x1_8p_1 = OpConstant %half 0x1.8p+1
 | |
|          %10 = OpConstantComposite %v3half %half_0x1p_0 %half_0x1p_1 %half_0x1_8p_1
 | |
| %half_0x1p_2 = OpConstant %half 0x1p+2
 | |
| %_ptr_Function_v3half = OpTypePointer Function %v3half
 | |
|          %15 = OpConstantNull %v3half
 | |
|           %f = OpFunction %void None %1
 | |
|           %4 = OpLabel
 | |
|          %13 = OpVariable %_ptr_Function_v3half Function %15
 | |
|          %16 = OpCompositeConstruct %v3half %half_0x1p_2 %half_0x1p_2 %half_0x1p_2
 | |
|          %12 = OpFAdd %v3half %10 %16
 | |
|                OpReturn
 | |
|                OpFunctionEnd
 |