#include <metal_stdlib>

using namespace metal;
struct tint_symbol {
  float4 value [[position]];
};

void exp2_1f8680() {
  float3 res = exp2(float3());
}

vertex tint_symbol vertex_main() {
  exp2_1f8680();
  tint_symbol const tint_symbol_1 = {.value=float4()};
  return tint_symbol_1;
}

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

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

