#include <metal_stdlib>

using namespace metal;
int3 tint_ftoi(float3 v) {
  return select(int3(2147483647), select(int3(v), int3((-2147483647 - 1)), (v < float3(-2147483648.0f))), (v < float3(2147483520.0f)));
}

float3 m() {
  thread float tint_symbol_1 = 0.0f;
  tint_symbol_1 = 1.0f;
  return float3(tint_symbol_1);
}

void f() {
  float3 const tint_symbol = m();
  int3 v = tint_ftoi(tint_symbol);
}

