| enable f16; |
| |
| struct FragmentInputs0 { |
| @builtin(position) position : vec4<f32>, |
| @location(0) @interpolate(flat) loc0 : i32, |
| }; |
| struct FragmentInputs1 { |
| @location(3) loc3 : vec4<f32>, |
| @location(5) loc5 : vec3<f16>, |
| @builtin(sample_mask) sample_mask : u32, |
| }; |
| |
| @fragment |
| fn main( |
| inputs0 : FragmentInputs0, |
| @builtin(front_facing) front_facing : bool, |
| @location(1) @interpolate(flat) loc1 : u32, |
| @builtin(sample_index) sample_index : u32, |
| inputs1 : FragmentInputs1, |
| @location(2) loc2 : f32, |
| @location(4) loc4 : f16, |
| ) { |
| if (front_facing) { |
| let foo : vec4<f32> = inputs0.position; |
| let bar : u32 = sample_index + inputs1.sample_mask; |
| let i : i32 = inputs0.loc0; |
| let u : u32 = loc1; |
| let f : f32 = loc2; |
| let v : vec4<f32> = inputs1.loc3; |
| let x : f16 = loc4; |
| let y : vec3<f16> = inputs1.loc5; |
| } |
| } |