#include <metal_stdlib>
using namespace metal;

void f_1() {
  uint v = 0u;
  uint offset_1 = 0u;
  uint count = 0u;
  uint const v_1 = v;
  uint const v_2 = count;
  uint const v_3 = min(offset_1, 32u);
  uint const x_11 = extract_bits(v_1, v_3, min(v_2, (32u - v_3)));
}

kernel void f() {
  f_1();
}
