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_f32 {
|
2022-11-23 18:21:38 +00:00
|
|
|
float fract;
|
|
|
|
int exp;
|
|
|
|
};
|
2022-11-23 19:57:00 +00:00
|
|
|
frexp_result_f32 tint_frexp(float param_0) {
|
|
|
|
frexp_result_f32 result;
|
2022-11-23 18:21:38 +00:00
|
|
|
result.fract = frexp(param_0, result.exp);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
kernel void tint_symbol() {
|
|
|
|
float const runtime_in = 1.25f;
|
2022-11-23 19:57:00 +00:00
|
|
|
frexp_result_f32 res = frexp_result_f32{.fract=0.625f, .exp=1};
|
2022-11-23 18:21:38 +00:00
|
|
|
res = tint_frexp(runtime_in);
|
2022-11-23 19:57:00 +00:00
|
|
|
res = frexp_result_f32{.fract=0.625f, .exp=1};
|
2022-11-23 18:21:38 +00:00
|
|
|
float const fract = res.fract;
|
|
|
|
int const exp = res.exp;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|