blob: 498b84e3181005e42af7885ea60eb52711092eca [file] [log] [blame]
Zhaoming Jiang9443ceb2022-08-05 15:15:17 +00001enable f16;
2
Natalie Chouinarde9027182024-06-13 18:50:19 +00003fn log_cdbdc1() -> vec4<f16> {
dan sinclaird9b68eb2022-11-10 00:32:12 +00004 var res : vec4<f16> = log(vec4<f16>(1.0h));
Natalie Chouinarde9027182024-06-13 18:50:19 +00005 return res;
Zhaoming Jiang9443ceb2022-08-05 15:15:17 +00006}
7
Natalie Chouinarde9027182024-06-13 18:50:19 +00008@group(0) @binding(0) var<storage, read_write> prevent_dce : vec4<f16>;
Zhaoming Jiang9443ceb2022-08-05 15:15:17 +00009
10@fragment
11fn fragment_main() {
Natalie Chouinarde9027182024-06-13 18:50:19 +000012 prevent_dce = log_cdbdc1();
Zhaoming Jiang9443ceb2022-08-05 15:15:17 +000013}
14
15@compute @workgroup_size(1)
16fn compute_main() {
Natalie Chouinarde9027182024-06-13 18:50:19 +000017 prevent_dce = log_cdbdc1();
18}
19
20struct VertexOutput {
21 @builtin(position)
22 pos : vec4<f32>,
23 @location(0) @interpolate(flat)
24 prevent_dce : vec4<f16>,
25}
26
27@vertex
28fn vertex_main() -> VertexOutput {
29 var out : VertexOutput;
30 out.pos = vec4<f32>();
31 out.prevent_dce = log_cdbdc1();
32 return out;
Zhaoming Jiang9443ceb2022-08-05 15:15:17 +000033}