#include <metal_stdlib>

using namespace metal;
void floor_3bccc4() {
  float4 res =   floor(float4());
}

vertex void vertex_main() {
  floor_3bccc4();
  return;
}

fragment void fragment_main() {
  floor_3bccc4();
  return;
}

kernel void compute_main() {
  floor_3bccc4();
  return;
}

