mirror of
				https://github.com/encounter/dawn-cmake.git
				synced 2025-10-26 03:30:30 +00:00 
			
		
		
		
	D3D11 only supports HLSL SM5.0 which doesn't support `space` (binding group in WGSL). So for D3D11, only one binding group will be used, and tint will not emit `space` for HLSL, so shaders can be used with D3D11. Bug: dawn:1705 Change-Id: Ie0e9868137f10762c5243e188d76f5e41879c2bc Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/125080 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Ben Clayton <bclayton@google.com> Kokoro: Ben Clayton <bclayton@google.com>
		
			
				
	
	
		
			20 lines
		
	
	
		
			517 B
		
	
	
	
		
			HLSL
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			517 B
		
	
	
	
		
			HLSL
		
	
	
	
	
	
| [numthreads(1, 1, 1)]
 | |
| void unused_entry_point() {
 | |
|   return;
 | |
| }
 | |
| 
 | |
| RWByteAddressBuffer v : register(u0);
 | |
| 
 | |
| int4 tint_mod(int4 lhs, int4 rhs) {
 | |
|   const int4 rhs_or_one = (((rhs == (0).xxxx) | ((lhs == (-2147483648).xxxx) & (rhs == (-1).xxxx))) ? (1).xxxx : rhs);
 | |
|   if (any(((uint4((lhs | rhs_or_one)) & (2147483648u).xxxx) != (0u).xxxx))) {
 | |
|     return (lhs - ((lhs / rhs_or_one) * rhs_or_one));
 | |
|   } else {
 | |
|     return (lhs % rhs_or_one);
 | |
|   }
 | |
| }
 | |
| 
 | |
| void foo() {
 | |
|   v.Store4(0u, asuint(tint_mod(asint(v.Load4(0u)), (2).xxxx)));
 | |
| }
 |