void min_aa28ad() {
  float2 res = min(float2(0.0f, 0.0f), float2(0.0f, 0.0f));
}

void vertex_main() {
  min_aa28ad();
  return;
}

void fragment_main() {
  min_aa28ad();
  return;
}

[numthreads(1, 1, 1)]
void compute_main() {
  min_aa28ad();
  return;
}

