mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-06-05 06:03:34 +00:00
As the resolver currently enforces in-order declarations, this does not change the declaration order from iterating over the ast::Module::GlobalDeclarations. The MSL backend has been changed to use the sem::Module::DependencyOrderedDeclarations list instead of looping over different declaration types separately. Bug: tint:1266 Change-Id: I698d612032285311017bfceab3c42adae1928a0e Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/79767 Reviewed-by: James Price <jrprice@google.com> Kokoro: Kokoro <noreply+kokoro@google.com>
45 lines
739 B
Plaintext
45 lines
739 B
Plaintext
#include <metal_stdlib>
|
|
|
|
using namespace metal;
|
|
|
|
struct modf_result_vec4 {
|
|
float4 fract;
|
|
float4 whole;
|
|
};
|
|
modf_result_vec4 tint_modf(float4 param_0) {
|
|
float4 whole;
|
|
float4 fract = modf(param_0, whole);
|
|
return {fract, whole};
|
|
}
|
|
|
|
void modf_ec2dbc() {
|
|
modf_result_vec4 res = tint_modf(float4());
|
|
}
|
|
|
|
struct tint_symbol {
|
|
float4 value [[position]];
|
|
};
|
|
|
|
float4 vertex_main_inner() {
|
|
modf_ec2dbc();
|
|
return float4();
|
|
}
|
|
|
|
vertex tint_symbol vertex_main() {
|
|
float4 const inner_result = vertex_main_inner();
|
|
tint_symbol wrapper_result = {};
|
|
wrapper_result.value = inner_result;
|
|
return wrapper_result;
|
|
}
|
|
|
|
fragment void fragment_main() {
|
|
modf_ec2dbc();
|
|
return;
|
|
}
|
|
|
|
kernel void compute_main() {
|
|
modf_ec2dbc();
|
|
return;
|
|
}
|
|
|