2022-11-23 18:21:38 +00:00
|
|
|
#include <metal_stdlib>
|
|
|
|
|
|
|
|
using namespace metal;
|
|
|
|
|
2022-11-23 19:57:00 +00:00
|
|
|
struct frexp_result_vec2_f32 {
|
2022-11-23 18:21:38 +00:00
|
|
|
float2 fract;
|
|
|
|
int2 exp;
|
|
|
|
};
|
2022-11-23 19:57:00 +00:00
|
|
|
frexp_result_vec2_f32 tint_frexp(float2 param_0) {
|
|
|
|
frexp_result_vec2_f32 result;
|
2022-11-23 18:21:38 +00:00
|
|
|
result.fract = frexp(param_0, result.exp);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
kernel void tint_symbol() {
|
|
|
|
float2 const runtime_in = float2(1.25f, 3.75f);
|
2022-11-23 19:57:00 +00:00
|
|
|
frexp_result_vec2_f32 res = frexp_result_vec2_f32{.fract=float2(0.625f, 0.9375f), .exp=int2(1, 2)};
|
2022-11-23 18:21:38 +00:00
|
|
|
res = tint_frexp(runtime_in);
|
2022-11-23 19:57:00 +00:00
|
|
|
res = frexp_result_vec2_f32{.fract=float2(0.625f, 0.9375f), .exp=int2(1, 2)};
|
2022-11-23 18:21:38 +00:00
|
|
|
float2 const fract = res.fract;
|
|
|
|
int2 const exp = res.exp;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|